Commit Graph

215 Commits

Author SHA1 Message Date
Mateusz Hoppe c4bfe4e487 feature(zebin): add implicit_arg_buffer_used_by_code exec env support
Resolves: NEO-14667

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-23 17:11:14 +02:00
Filip Hazubski 936a3d2f31 build: kernels_bin update
Correct CompilerInterfaceOclElfCacheTest fixture.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-05-16 15:08:04 +02:00
Mateusz Jablonski 6e20cbc05f fix: patch relocations byte-wise
there is no restriction for alignment of relocation offset

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-12 15:33:12 +02:00
Mateusz Hoppe a56785f8b0 feature: add support for 64bit cross thread offset relocation
Resolves: NEO-14865

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-08 15:04:25 +02:00
Mateusz Hoppe d3b11d1527 fix: correctly patch implicit arg buffer in indirect data
- use correct size alignment of implicit arg buffer, crossthread data
should start after the buffer without extra padding

Related-To: NEO-14449

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-06 13:25:11 +02:00
Compute-Runtime-Validation 26d3c7527c Revert "fix: correctly patch implicit arg buffer in indirect data"
This reverts commit e345d55fe5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-06 04:38:50 +02:00
Jack Myers 27510b6e5e test: mark unused var for LNL
Build with only LNL enabled failed
due to unused static variable.

Variable is still used when other platforms
are enabled, so ``[[maybe_unused]]`` was added
to allow LNL-only builds to succeed.

Signed-off-by: Jack Myers <jack.myers@intel.com>
Related-To: NEO-14849
2025-05-06 01:25:20 +02:00
Mateusz Hoppe e345d55fe5 fix: correctly patch implicit arg buffer in indirect data
- use correct size alignment of implicit arg buffer, crosshtread data
should start after the buffer without extra padding

Related-To: NEO-14449

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-05 16:03:57 +02:00
Chodor, Jaroslaw 7bded13638 feature: Enabling support for redirecting FCL to IGC for OCL
This allows for invoking IGC as OCL C translator in OpenCL paths

Accepted debug env :
UseIgcAsFcl=1 ; forces IGC
UseIgcAsFcl=2 ; forces FCL
UseIgcAsFcl=0 ; uses defaults

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-14 18:41:48 +02:00
Jaroslaw Warchulski 3e1aa33924 refactor: cleanup headers
Related-To: NEO-5548
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-04-14 14:59:40 +02:00
Marcel Skierkowski 5d01677454 refactor: Mock file system in ULTs
Functions: fileExists and loadDataToFile
use IO functions from namespace IoFunctions

Now tests that use these functions
are mocked by default,
but some still require access to real files
and have been restored the ability to read files.
They will be mocked in next PRs.

Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2025-04-09 19:51:46 +02:00
Mateusz Hoppe 34dad4d3de refactor: store implicit args version in kernel
- adjust tests to work with implicitargs v0 and v1

Related-To: NEO-14115

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-03-10 22:58:57 +01:00
Mateusz Hoppe 291745cdf7 feature: add support for ImplicitArgs versioning
- define ImplicitArgs version 1

Related-To: NEO-14115

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-25 10:27:11 +01:00
Pawel Cieslak 184378e4df fix: silence new issues with clang-tidy 18 on windows
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2025-02-11 13:55:29 +01:00
Naklicki, Mateusz 9aad7750be fix: adjust IGC hwinfo for related tests
Also update builtin kernels


Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2025-02-04 10:05:08 +01:00
Fabian Zwoliński 285414e852 fix: cl_cache - add cm header includes to whitelist
This patch adds following includes to the whitelist:
<cm/cm.h>
<cm/cmtl.h>

Related-To: NEO-13641
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-01-21 10:22:03 +01:00
Fabian Zwoliński bbaca5d8e2 feature: cl_cache - add support for whitelisted includes
Related-To: NEO-13641
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-01-20 15:07:14 +01:00
Mateusz Hoppe b5c8220ccc test: refactor compiler interface tests
- prevent loading igc in tests with igc unavailable


Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-12-20 11:29:24 +01:00
Filip Hazubski fe23e7fa40 refactor: Explicitly delete unused functions of LinkerInput
Comply with the rule of five.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-11-18 09:50:11 +01:00
Chodor, Jaroslaw 5f908ce092 feature: adding support for custom compiler backends
This adds abbility to load different versions of the backend
compiler based on underlying device.

Related-To: NEO-12747

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2024-10-23 19:55:36 +02:00
Compute-Runtime-Validation 2098e64dc1 Revert "feature: adding support for custom compiler backends"
This reverts commit 8098bcc48d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-16 02:07:25 +02:00
Chodor, Jaroslaw 8098bcc48d feature: adding support for custom compiler backends
This adds abbility to load different versions of the backend
compiler based on underlying device.

Related-To: NEO-12747

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2024-10-14 18:23:11 +02:00
Brandon Yates 7f0a0ae034 fix: Add new debug sip kernel type for heapless
Related-to: NEO-7979

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-09-11 14:32:15 +02:00
Fabian Zwoliński ea5b586c37 fix: move pathExists out of sys calls and do not mock it
Moved pathExists from SysCalls to path.h.
In ULTs, use unchanged pathExists and mock stat, getFileAttributesA instead.
Add Windows and Linux ULTs for pathExists.

Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-09-10 19:24:45 +02:00
Fabian Zwoliński e30b8c0300 fix: windows cl_cache fixes and improvements
Fixed the function that checks if a directory exists.
Added debug message in case config file creation fails.
Simplified setting pattern for searching all files in a directory.
Adding file search loop skip when found file is a directory.

Fixes: #762
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-09-09 19:25:52 +02:00
Mateusz Hoppe f8994aacb6 fix: use bindful kernels in OCL tests
- compile stateless buitlins version with stateful bindful mode

Related-To: NEO-11704

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-06-12 12:02:54 +02:00
Mateusz Jablonski a67ef72210 fix: include hw ip version in compiler cache hash
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-11 15:55:06 +02:00
Mateusz Jablonski cfd5f0c9b3 fix: use .spv for intermediate representation
Related-To: NEO-7785
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-11 12:06:57 +02:00
Compute-Runtime-Validation f4106ca44c Revert "fix: use .spv for intermediate representation"
This reverts commit 6c9bca8cdc.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-06-11 05:57:05 +02:00
Mateusz Jablonski 6c9bca8cdc fix: use .spv for intermediate representation
Related-To: NEO-7785
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-10 15:38:50 +02:00
Filip Hazubski 5ae2709e6e fix: Remove allow-zebin and enable-zebin compile options
Zebin is enabled by default.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-10 14:08:40 +02:00
Fabian Zwoliński 04af8bc5b4 fix: add support for __INTEL_PER_THREAD_OFF
Related-To: NEO-10368
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-05-21 17:50:43 +02:00
Maciej Plewka b755a30919 fix: patch correct payload offset value in relocation
Related-To:: GSD-8116
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2024-05-21 06:12:03 +02:00
Weronika Kapusta d6c16c1640 fix: remove compiler cache legacy implementation
Related-To: NEO-10679

Signed-off-by: Weronika Kapusta <weronika.kapusta@intel.com>
2024-05-06 18:28:35 +02:00
Timo Aaltonen cb984b3e4b fix: Fix various typos.
Signed-off-by: Timo Aaltonen <tjaalton@debian.org>
2024-04-17 20:03:06 +02:00
Mateusz Hoppe a9366fff48 refactor: print message with location when cache is enabled
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-04-11 17:08:39 +02:00
Compute-Runtime-Validation 9568ee47e7 Revert "fix: remove compiler cache legacy implementation"
This reverts commit 864f42116c.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-04-09 02:06:51 +02:00
Weronika Kapusta 864f42116c fix: remove compiler cache legacy implementation
Related-To: NEO-10679
Signed-off-by: Kapusta, Weronika <weronika.kapusta@intel.com>
2024-04-08 16:40:57 +02:00
Kacper Nowak 35ca2bbea9 refactor: refactor logic for querying atomic FP capabilities
- Move logic from product helper to compiler product helper
- Add method for adjusting fp16 and extra capabilities using release
helper (if present).


Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2024-03-28 15:27:45 +01:00
Fabian Zwolinski 52430762ac fix: cl_cache L0 env vars + refactor code structure
Added support for new Compiler Cache
environment variables in Level Zero.

Moved
`opencl/source/compiler_interface/default_cache_config.cpp`
`level_zero/core/source/compiler_interface/default_cache_config.cpp`
to shared directory
`source/compiler_interface/default_cache_config.cpp`

Switched enabling cache by default from per OS to per API.
Changed default state of cl_cache in Level Zero to disabled.

Related-To: NEO-10045
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2024-03-01 17:35:08 +01:00
Fabian Zwolinski a27dafd2e1 fix: cl_cache store binary and debug data in one file
Related-To: NEO-10045
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2024-02-29 10:13:15 +01:00
Dominik Dabek 239831f097 fix: return error for 0 size usm allocations
according to both level zero and opencl specs, usm allocations with
size=0 should return invalid/unsupported buffer size errors

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-12-22 17:26:39 +01:00
Mateusz Jablonski a4888b39c6 build: add clang-tidy restriction for Enum case
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-21 08:58:51 +01:00
Mateusz Jablonski a6458433dc refactor: correct naming of enum class constants 9/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 10:36:25 +01:00
Mateusz Jablonski dd1b9d6abc refactor: correct naming of enum class constants 8/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 08:18:18 +01:00
Chodor, Jaroslaw 7e795cd3c1 feature: Adding support for OCL C support queries to ocloc
Feature needed for automated OCL C compilation with ocloc as backend.
Added queries :
* CL_DEVICE_EXTENSIONS
* CL_DEVICE_EXTENSIONS_WITH_VERSION
* CL_DEVICE_PROFILE
* CL_DEVICE_OPENCL_C_ALL_VERSIONS
* CL_DEVICE_OPENCL_C_FEATURES

Sample command line:
ocloc query -device skl CL_DEVICE_OPENCL_C_FEATURES

Related-To: GSD-7420

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2023-12-18 15:19:16 +01:00
Dunajski, Bartosz d99104d5bf refactor: improve ImplicitArg struct handling
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-18 15:19:00 +01:00
Mateusz Jablonski beafea9b39 refactor: correct naming of enum class constants 2/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 13:13:35 +01:00
Fabian Zwolinski ee53bf0839 fix: linux cl_cache eviction mechanism
Fixed and refactored eviction mechanism works as follows:
- eviction is needed only if
total size of cache binaries + size of the new binary exceed cache limit
- single evition call removes files with a summed size of 1/3 of the cache limit
- if new binary can not fit in the cache size limit
even after eviction, it will not be saved
- cache limit applies only to
files in cache directory with .cl_cache/.l0_cache extension.
Only these files are counted and only these files are removed

Minor:
- rename variables for better readability
- add `const` where possible

Related-To: NEO-4262
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-12-05 09:35:48 +01:00
Mateusz Jablonski c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00