Commit Graph

407 Commits

Author SHA1 Message Date
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
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
Mateusz Jablonski
500ed3029b fix: use generic names in fat binary entries
Related-To: NEO-10190
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-07 16:38:35 +02:00
Mateusz Jablonski
d28ac15922 refactor: remove invalid device ids
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-04 15:28:05 +02:00
Mateusz Jablonski
f3fa58de15 refactor: define release helper sources only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-03 13:59:11 +02:00
Mateusz Jablonski
d7c7cb203c fix: add missing support for acronyms without dashes
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-05-29 17:07:06 +02:00
Chodor, Jaroslaw
ad155da67a feature: Enabling platforms in ocloc by default
This feature enables supported platforms in ocloc even
if not enabled for driver.
Allows sharing single ocloc instance for multiple driver-platform
configurations

Related-To: NEO-10531

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2024-05-28 12:09:47 +02:00
Chodor, Jaroslaw
e053f3a839 feature: Add support for legacy acronyms in ocloc's ids query
Expands support for deprecated acronyms to ids query.
Additionally, this commit changes default devices for legacy
acronyms.

Related-To: NEO-10190

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2024-05-28 10:18:29 +02:00