Commit Graph

239 Commits

Author SHA1 Message Date
Jaroslaw Warchulski
051cada78b refactor: add patchtokens fallback AIL
Related-To: HSD-14023878700

Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-11-20 12:58:22 +01:00
Mateusz Jablonski
7dfc549ff0 fix: remove not needed test files
merge kernel files to simple_kernels.cl

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-23 16:40:48 +02:00
Jaroslaw Warchulski
05250e7460 fix: Remove patchtokens fallback AIL
Related-To: NEO-12358
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-09-12 18:26:19 +02:00
Maciej Plewka
27488a8315 fix: Add option to use divergent paths for barriers
Related-To: NEO-12159, IGC-9846, HSD-16024235164, HSD-15014782386

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2024-08-12 12:15:54 +02:00
Grzegorz Choinski
46f2568902 build: fixes for windows clang with -m32
Related-To: NEO-10748
Signed-off-by: Grzegorz Choinski <grzegorz.choinski@intel.com>
2024-07-18 14:49:56 +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
55fad237b8 test: update gtest API usage
use *_TEST_SUITE* instead of *_TEST_CASE*

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-05-28 16:20:06 +02:00
Fabian Zwoliński
59829aeb11 fix(ocl): Force rebuild if binary contains bindless kernel
Related-To: NEO-7063
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-05-20 14:15:17 +02:00
Michal Mrozek
25b3a3dbfa fix: user proper settings for caches.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2024-02-15 11:38:34 +01:00
Mateusz Jablonski
89c58b8371 test: reduce scope of debug message printing in test
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-22 09:17:33 +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
138fb65401 refactor: correct naming of enum class constants 11/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 14:52:57 +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
Mateusz Jablonski
895519db38 refactor: correct naming of NEOImageType enum values
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-12 11:15:28 +01:00
Mateusz Jablonski
b182917d9d refactor: correct naming of allocation types
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 16:23:37 +01:00
Katarzyna Cencelewska
39ccf0297f fix: Skip rebuild binary forced by flag when lack of ir
when flag RebuildPrecompiledKernels set and call clCreateProgramWithBinary
skip rebuild if ir binary not available

Resolves: HSD-18035219734
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-12-06 20:00:05 +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
Mateusz Jablonski
36194c4e7d refactor: correct variable namings
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-29 23:49:03 +01:00
Kacper Nowak
c504b497d7 refactor: Store AIL in root device environment
Instead of storing AIL configurations in global table, store it
in root device environment.
This also prevents potential scenario with accessing deleted memory due
to symbol collision when application uses both OCL/L0 libraries.
- AIL is now stored in root device environment, and gets initialized
with other helpers
- Minor: corrected naming in ULTs

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Related-To: NEO-9240
2023-11-17 15:18:27 +01:00
Compute-Runtime-Validation
27000c06cb Revert "refactor: Store AIL in root device environment"
This reverts commit 02ef252b7d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-11-16 19:37:42 +01:00
Kacper Nowak
02ef252b7d refactor: Store AIL in root device environment
Instead of storing AIL configurations in global table, store it
in root device environment.
This also prevents potential scenario with accessing deleted memory due
to symbol collision when application uses both OCL/L0 libraries.
- AIL is now stored in root device environment, and gets initialized
with other helpers
- Minor: corrected naming in ULTs

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Related-To: NEO-9240
2023-11-15 13:17:56 +01:00
Mateusz Jablonski
781533565e fix: fix issues with ubsan in shared and OCL tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-09 12:39:29 +01:00
Mateusz Jablonski
330fb40107 fix: fix clang-tidy issues
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-31 16:32:06 +01:00
Mateusz Jablonski
91b26277a4 feature: add method to adjust hw info for igc
Related-To: NEO-8203

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-09-04 11:58:13 +02:00
Fabian Zwolinski
99d0823e8f fix: Append extra extensions when FP64 emulation is enabled
Related-To: NEO-7611
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-06-22 08:38:53 +02:00
Kamil Kopryk
52651991c2 feature: don't allow to build program with stateful accesses on PVC
Related-To: NEO-6075
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-06-12 19:31:32 +02:00
Kamil Kopryk
6a0f7afd64 feature: verify stateful information only when binary is generated by IGC
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>

Related-To: NEO-6075

Ngen binaries contain stateful information, however they are
not used in isa on Pvc. Therefore, we can just ignore them.
2023-06-12 11:45:41 +02:00
Filip Hazubski
9215d41b85 Revert "feature: Don't allow to build program with stateful accesses on PVC"
This reverts commit 1676c32c78.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-05-02 22:12:40 +02:00
Diedrich, Kamil
5149d74141 refactor: Remove globaly enabled cl_cache
Current behaviour will be detecd path existence

Related-To: NEO-4262

Signed-off-by: Diedrich, Kamil <kamil.diedrich@intel.com>
2023-04-28 23:28:49 +02:00
Fabian Zwolinski
cbce863dc2 refactor: Rename member variables to camelCase 3/n
Additionally enable clang-tidy check for member variables

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-28 16:01:14 +02:00
Kamil Kopryk
1676c32c78 feature: Don't allow to build program with stateful accesses on PVC
Related-To: NEO-6075
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-04-28 15:02:13 +02:00
Andrzej Koska
7230120060 fix: return the appropriate KernelInfo when calling the getKernelInfo
The indexes of all returned kernelInfo values greater than or equal to
exportedFunctionsKernelId should be incremented by one

Related-To: NEO-7820

Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
2023-04-27 21:12:56 +02:00
Fabian Zwolinski
e2e00413a8 Apply CamelCase for class and struct names
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-24 15:36:27 +02:00
Kacper Nowak
7be2ac84d3 Refactor(ocl): refactor OCL Kernel and MultiDeviceKernel class 1/n
- For static create() method for Kernel and MultiDeviceKernel force errcodeRet
parameter to be passed via reference (instead of a pointer)
- Move part of kernel's creation logic to initialize() method

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-04-11 11:43:26 +02:00
Young Jin Yoon
3f6443edfb Change allowZebin to enableZebin for apiOptions
Changed -cl-intel-allow-zebin to -cl-intel-enable-zebin only for
API options.

Related-To: NEO-7801

Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2023-03-30 12:46:10 +02:00
Kamil Kopryk
5a99635232 Don't check addressing mode for gtpin surface
If gtpin is used, then don't check addressing mode
of the last explicit arg, which is
gtpin's surface.

Related-To: NEO-6075
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-10 16:01:24 +01:00
Kacper Nowak
efba242570 fix(zebin): Extend oneDNN WA for whole application context
When a dummy kernel "kernel void_(){}" is passed in sources - specific
for workloads with ngen backend - enforce fallback to CTNI for the whole
application context (mark the context as non-zebinary).

Related-To: NEO-7772
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-03-07 14:21:57 +01:00
Fabian Zwolinski
6c59953072 Add FP64 emulation support for ATS-M
This patch adds FP64 emulation support for ATS-M.
Introducing new environment variable - NEO_FP64_EMULATION - which provides
an option to allow the opt-in emulation of FP64.
When emulation is enabled, we pass -cl-fp64-gen-emu (ocl) /
-ze-fp64-gen-emu (L0) as an internal option to IGC.

Related-To: NEO-7611
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-03-07 14:21:01 +01:00
Krystian Chmielewski
58d3f892a9 refactor(zebin): move files to seperate directory
* Moved zebin related files to zebin directory.
* Moved zebin related code to Zebin namespace.
* Separated zeInfo from zebin elf.
* Seperated zeInfo decoding from zebin decoder.
* Refactored populateKernelPayloadArgument function.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2023-03-03 21:48:19 +01:00
Compute-Runtime-Validation
84a7438ff2 Revert "refactor(zeInfo): move zeinfo to seperate file"
This reverts commit e3ce887662.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-03-03 11:56:52 +01:00
Mateusz Hoppe
0b7817eecf feature: Experimental OCL debugging
- notify module create/destroy

Related-To: NEO-7075

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-03-02 15:59:15 +01:00
Krystian Chmielewski
e3ce887662 refactor(zeInfo): move zeinfo to seperate file
* Moved zebin related files to zebin directory.
* Separated zeInfo from zebin elf.
* Seperated zeInfo decoding from zebin decoder.
* Refactored populateKernelPayloadArgument function.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2023-03-02 12:46:56 +01:00
Mateusz Hoppe
c28f0c72ea test: fix cleanup order in ULTs
- program using device must be released before device is destroyed.
Reset program unique_ptr in fixtures before device fixture tearDown()
- reorder fixtures members to ensure correct order of destructors

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-02-27 18:23:16 +01:00
Warchulski, Jaroslaw
7f705e631a Cleanup includes 55
Cleaned up files:
level_zero/core/test/unit_tests/fixtures/memory_ipc_fixture.h
level_zero/core/test/unit_tests/sources/tracing/test_api_tracing_common.h
opencl/test/unit_test/aub_tests/fixtures/multicontext_aub_fixture.h
opencl/test/unit_test/fixtures/program_fixture.h
opencl/test/unit_test/offline_compiler/environment.h
opencl/test/unit_test/offline_compiler/mock/mock_argument_helper.h
shared/test/common/cmd_parse/cmd_parse_base.inl
shared/test/common/mocks/mock_aub_file_stream.h
shared/test/common/mocks/mock_deferrable_deletion.h
shared/test/common/mocks/windows/mock_gmm_memory_base.h
shared/test/unit_test/encoders/walker_partition_fixture_xehp_and_later.h
shared/test/unit_test/os_interface/windows/os_interface_win_tests.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-16 13:30:20 +01:00
Kacper Nowak
5fe902c819 feat(AIL): make AIL oneDNN WA platform-independent
If on clCreateProgramWithSource() call we detect a nGen dummy kernel usage,
then enforce fallback to the patchtokens format (only for this kernel).
Extend this logic to all platforms (previously - only for TGL/ICL).
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-02-10 20:49:45 +01:00
Artem Gindinson
6f3503af38 Fix concatenation of FE/BE compilation log strings
Due to the mixed usage of `std::string` objects and C-strings, null terminator
characters sometimes propagate into possible `program::updateBuildLog()`
inputs. In particular, `TranslationOutput::frontendCompilerLog` and
`::backendCompilerLog` get set this way within the `CompilerInterface::build()`
API implementation.

This becomes an issue whenever each of CL -> IR and IR -> ISA compilation steps
emits their warnings and/or errors:
`clGetProgramBuildInfo(..., CL_PROGRAM_BUILD_LOG, ...)` also relies on
`std::string` to C-string conversion, so the output is trimmed at the first
null terminator, i.e. the BE part of the build log simply gets lost.

The change handles possible null terminators within `program::updateBuildLog()`
and adds relevant regression tests.

Related-To: IGC-6509
Signed-off-by: Artem Gindinson <artem.gindinson@intel.com>
2023-02-06 14:18:50 +01:00
Kamil Kopryk
cab4b956eb refactor: rename compiler product helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-03 09:03:24 +01:00
Kamil Kopryk
2484c7ceb2 refactor: rename hw_helper files to gfx_core_helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-01 19:37:51 +01:00
Warchulski, Jaroslaw
fe8a6d98ad Cleanup includes 45
Cleaned up files:
opencl/source/api/api.h
shared/source/command_stream/csr_deps.h
shared/source/helpers/engine_node_helper.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-26 11:12:15 +01:00