Commit Graph

417 Commits

Author SHA1 Message Date
Marcel Skierkowski e27a6dc280 refactor: use virtualFileSystem in ULTs
reducing the number of tests that have interactions with filesystem.
writeDataToFile() saves filename and content in std::map.
fileExistsHasSize() checks if file was previously written to virtualFileSystem
loadDataFromVirtualFile() fetches data from std::map based on filename

Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2024-12-13 17:57:07 +01:00
Filip Hazubski 43c199185a fix: Add explicit nullptr checks
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-12-10 10:06:56 +01:00
Mateusz Jablonski fa58073095 refactor: remove not used usings/typedefs/variables
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-28 16:19:39 +01:00
Chodor, Jaroslaw 3a0c2005d4 refactor: Cleanup around options files
* Adding options*.inl to sources list
* Improving robustness of missing IGC library log

Related-To: NEO-12747

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2024-11-17 17:13:03 +01:00
Chodor, Jaroslaw d1ab846a5a refactor: cleanup around options files
This patchset improves handling of library names for NEO's dynamic
dependencies.

Related-To: NEO-12747

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2024-11-15 22:21:16 +01:00
Mateusz Jablonski fde3b36125 fix: avoid enum out of scope cast in getProductsForTargetRange function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-07 13:24:17 +01:00
Artur Harasimiuk 7c0ecf234f build: detect IGA major version
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-11-06 14:27:39 +01:00
Marcel Skierkowski 49d999abe6 fix: remove defaultProfilingTimerResolution from RuntimeCapabilityTable
Related-To: NEO-12275
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2024-11-04 12:02: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
Bartosz Dunajski ff80a02fcb refactor: parse extra zebin params
Related-To: NEO-12591

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-10-21 09:59:33 +02:00
Mateusz Jablonski 4154e6666b fix: correct loading L0 loader functions
- don't load ze_loader.dll from file system
- to perform self-open on Windows use getModuleHandleA with proper module name
- don't free library loaded with getModuleHandleA
- as loader may be not available during runtime teardown:
- load translate handle function during global setup
- load setDriverTeardown function during global teardown
- when loader is not available during teardown, unset translate handle
function

Related-To: GSD-10147

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-10-17 15:39:20 +02:00
Compute-Runtime-Validation f117b5fb68 Revert "fix: correct loading L0 loader functions"
This reverts commit 9c7b3c5e19.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-17 08:20:19 +02:00
Mateusz Jablonski 9c7b3c5e19 fix: correct loading L0 loader functions
on Windows use getModuleHandleA with proper module name
don't load ze_loader.dll from file system

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-10-16 19:53:05 +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
Artur Harasimiuk 22505ca3ed refactor: cleanup coding style
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-10-02 12:42:39 +02:00
Mateusz Jablonski 9db83b8231 refactor: unify isMidThreadPreemptionSupported function
mid thread preemption can be enabled only by ftrWalkerMTP flag
pre-Xe2 devices doesn't support MTP

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-10-01 11:26:04 +02:00
Mateusz Jablonski 5912b43841 refactor: remove dead code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-17 13:41:50 +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
Mateusz Jablonski 51d03ba130 refactor: remove not needed check
OsLibrary::load already checks if library is loaded

Related-To: NEO-12273
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-20 13:30:00 +02:00
Mateusz Jablonski 579af57161 refactor: don't call OsLibrary::load directly, use function pointer
this allows mocking this call in ULT

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-20 08:59:26 +02:00
Mateusz Jablonski 90015a584b fix(ocloc): disable ocloc output if former ocloc was used
in case of fallback to former ocloc, the former ocloc setups outputs

Related-To: NEO-12273
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-14 15:49:14 +02:00
Mateusz Jablonski 922edfd68d fix(ocloc): correct ocloc name in supported devices query
previous approach was to version ocloc library but it was deprecated
right now there will be 2 known libraries:
- libocloc.so - for mainstream
- libocloc-legacy1.so for legacy platforms

Related-To: NEO-12273, NEO-9630
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-14 11:05:28 +02:00
Mateusz Jablonski d963318cad fix: add fallback to former ocloc in case of invalid device error
Related-To: NEO-12273
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-14 09:30:57 +02:00
Mateusz Jablonski a32bb4d9a4 refactor: extract logic of calling former ocloc to separate function
Related-To: NEO-12273
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-13 17:24:48 +02:00
Mateusz Jablonski 0eec0cdf57 refactor: define ocloc current and former names in shared ocloc file
ensure both names are different

Related-To: NEO-12273
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-13 14:40:55 +02:00
Artur Harasimiuk 5bb1bc0396 build: add ocloc CURRENT and FORMER definitions
Related-To: NEO-6683
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-08-12 11:45:27 +02:00
Artur Harasimiuk 57e7147e7c build: update ocloc_lib installation path for runtime
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-08-06 12:41:26 +02:00
Oskar Hubert Weber 3ccab79ed8 test: dir create
Related-To: NEO-11500

Signed-off-by: Oskar Hubert Weber <oskar.hubert.weber@intel.com>
2024-08-05 13:58:25 +02:00
Filip Hazubski 99d9482464 performance: Avoid data copy during SupportedDevicesHelper::deserialize
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-08-01 17:26:26 +02:00
Artur Harasimiuk 250601fd7b build: cleanup not needed variables from cmake
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-08-01 12:52:20 +02:00
Artur Harasimiuk b6038de550 build: adjust name for legacy1 packages
Related-To: NEO-6683
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-07-31 16:20:08 +02:00
Filip Hazubski f8867ac3ac fix: Minor code improvements
Add explicit pointer checks to CommandQueue::blitEnqueueAllowed.

Explicitly check result of getDeviceArgValueIdx during ocloc compile.

Explicitly remove unused StagingBufferManager functions.
Move chunkCopyFunc by reference.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-07-19 09:24:37 +02:00
Fabian Zwoliński 359f4d5b56 feature: add SUPPORTED_DEVICES query to ocloc
New query option
ocloc query SUPPORTED_DEVICE
allows to generate a YAML file containing
information about supported devices for:
- the current version of ocloc on Windows
- the current and previous versions of ocloc on Linux

Each version of ocloc build needs to set
NEO_OCLOC_CURRENT_LIB_NAME
NEO_OCLOC_FORMER_LIB_NAME
cmake defines for the ocloc to be able to
find a previous lib and query its supported devices.

Example of correct format:
NEO_OCLOC_FORMER_LIB_NAME=libocloc-1.0.so
NEO_OCLOC_CURRENT_LIB_NAME=libocloc-2.0.so

Related-To: NEO-9630
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-07-11 17:38:33 +02:00
Mateusz Jablonski 746ae5937b build: correct include directories for ocloc
Related-To: NEO-8188
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-09 14:58:00 +02:00
Mateusz Jablonski 778645c11e feature: add initial support for Xe2 platforms
Related-To: NEO-8188, NEO-10774
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-09 10:30:27 +02:00
Mateusz Hoppe b40ec06256 fix: ocloc - do not create /dev/null directory
Related-To: NEO-11500

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-03 16:54:55 +02:00
Oskar Hubert Weber a7ddf7848b fix: fatbinary generation with "-out_dir"
Directories are created if needed before generating fatbinary.

Related-To: NEO-11500

Signed-off-by: Oskar Hubert Weber <oskar.hubert.weber@intel.com>
2024-07-02 13:33:53 +02:00
Alicja Lukaszewicz 3db2bfc235 fix: generate SPIR-V for first device with -spv_only and multiple devices
If the family is provided as a device with the "-spv_only" flag, then
the SPIR-V file will be generated for the first device in the family.

Related-to: NEO-11550
Signed-off-by: Alicja Lukaszewicz <alicja.lukaszewicz@intel.com>
2024-06-28 09:30:26 +02:00
Maciej Bielski c80a5e0143 fix: avoid dereferencing nullptr
Related-To: NEO-11825

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-06-26 19:46:49 +02:00
Artur Harasimiuk c41f3fccb9 build: always use libocloc.so for 'current' shared library
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-06-25 10:59:02 +02:00
Artur Harasimiuk bbe11205e3 build: add cmake flags to control platform support
Related-To: NEO-6683
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-06-25 09:08:03 +02:00
Filip Hazubski efa3647d8f refactor: Correct argument order to be in line with function argument names
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-24 11:34:53 +02:00
Dominik Dabek dc26b25169 Revert "fix: ulls controller sleep, windows"
This reverts commit 672cc0ebc7.

Resolves: HSD-18038912878, NEO-11770

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-06-21 14:10:43 +02:00
Dominik Dabek 672cc0ebc7 fix: ulls controller sleep, windows
Request higher resolution for windows periodic timers for ulls
controller sleep.

Allows for controller thread to sleep with granularity of 1ms.

Related-To: NEO-10800

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-06-18 06:28:15 +02:00
Artur Harasimiuk ad374fbd8f build: allow use cl_cache in ocloc
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-06-13 16:06:15 +02:00
Artur Harasimiuk cddec0f78b feature(ocloc): read cl_cache configuration from env variables
Related-To: NEO-7785
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-06-13 15:41:21 +02:00
Mateusz Jablonski a28d6557ad fix(ocloc): optimize accesses to cache when building source code
when binary is zebin then don't look for separate debug binary

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-12 17:04:38 +02:00
Mateusz Jablonski 5fa5387781 fix(ocloc): remove incorrect ir binary caching during build from source
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-12 12:02:39 +02:00
Mateusz Hoppe 037957a7ae feature: add -stateful_address_mode to ocloc
- allows to choose bindless or bindful addressing in generated code

Related-To: NEO-11704

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-06-12 07:46:12 +02:00