Commit Graph

3811 Commits

Author SHA1 Message Date
Dunajski, Bartosz
d7aba6747c Move isRelaxedOrderingDispatchAllowed to common helper
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-09 17:11:53 +01:00
Kamil Kopryk
a6dfb3a6c2 refactor: rename enable product helper files
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-09 16:55:31 +01:00
Mateusz Jablonski
5080250a64 refactor: remove include from enable_compiler_product_helper files
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-09 11:21:37 +01:00
Cencelewska, Katarzyna
c274309d7b wa: add dummy blits before command MI_FLUSH_DW
to guarantee that all subblt got complete for previous copy
affect xe hpg

temporary changes under flag ForceDummyBlitWa

Related-To: NEO-7450

Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-03-09 10:40:35 +01:00
Mateusz Hoppe
37dbec305d feature: add AssertHandler
- initial implementation to support assert() on GPU

Related-To: NEO-5753

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-03-08 17:55:23 +01:00
Kamil Kopryk
49b01a8ea4 refactor: rename product helper uuid files
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-08 17:25:57 +01:00
Dominik Dabek
69a16fd3ed feature: check indirect access for kernel
Do not make indirect allocations resident if kernel does not use
indirect access.
For both level zero and opencl.
Currently disabled by default, enable with debug flag
DetectIndirectAccessInKernel

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-03-08 16:58:26 +01:00
Kamil Kopryk
c7311bc140 refactor: rename product helper files for xehpc and later
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-08 16:28:59 +01:00
Mateusz Jablonski
553dd7f21f refactor: return thread per eu from compiler product helper
Related-To: NEO-7442
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-08 16:25:20 +01:00
Maciej Plewka
6ab9037c35 Use FusedEu Dpas W/A only in ACM
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-03-08 14:14:58 +01:00
Kamil Kopryk
648c45cbb7 refactor: correct typo enable product helper
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-08 13:12:42 +01:00
Zbigniew Zdanowicz
f003666ad7 Add state base address transition for global stateless heap command lists
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-08 12:32:15 +01:00
Spruit, Neil R
86e739e9dc feature: Relaxed Virtual Memory reservation with pStart
Related-To: LOCI-3871

- Relaxed the Virtual Memory Reservation to allow pStart and not fail if
the pStart value is not obtained.
- Moves checks on pStart to the user to check and determine if they want
to re-reserve or use the address allocated.
- Changed reserveGpuAddress to use unit64_t type to allow internal
address range structure assignment without cast.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-03-08 08:06:50 +01:00
Mateusz Jablonski
c628ffe18a fix: return proper hw info config for dg2 platforms
Related-To: NEO-7622
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-08 07:50:02 +01:00
Kamil Kopryk
f4d60bb24f refactor: rename product helper files for mtl and later platforms
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-07 20:16:58 +01:00
Spruit, Neil R
9aa4275fda Check for valid stype before reading Device Properties pNext
Related-To: LOCI-3884

- Added check for valid device properties stype to remove the feature
specific debug vars that enabled/disabled reading of the pNext.
- Requires applications to properly set the device properties stype
in order for the pNext to be read for extensions.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-03-07 18:20:10 +01:00
Jaime Arteaga
55952d33df feature: Enable use KMD calls in prefetch APIs
If applications call Prefetch APIs, like
zeCommandListAppendMemoryPrefetch and
clEnqueueMigrateMemINTEL, then enable the use of KMD calls
by default.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-03-07 16:31:50 +01:00
Kamil Kopryk
a81e2ce9d5 refactor: rename product helper files for dg2 and later platforms
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-07 16:16:50 +01:00
Zbigniew Zdanowicz
fd7a3c4096 Add creation of global stateless heap for the context
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-07 15:00:34 +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
Zbigniew Zdanowicz
8a55d9b517 skip surface and dynamic heap creation when global heaps are used
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-07 13:40:14 +01:00
Kamil Kopryk
142e227e8f refactor: rename product helper xehp and later files
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-07 13:30:13 +01:00
Kamil Kopryk
3c7d54aeeb refactor: rename product helper bdw and later files
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-07 12:58:19 +01:00
Mateusz Jablonski
8194543ae5 refactor raytracing: unify RT programming logic
reuse EncodeEnableRayTracing in CommandStreamReceiver
add method to determine need for 48b resource flag for RT allocations
Related-To: NEO-7606

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-07 11:51:58 +01:00
Cencelewska, Katarzyna
3e116ea378 refactor: use same paths when add command mi_semaphore_wait
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-03-07 10:35:26 +01:00
Cencelewska, Katarzyna
50da32ffb1 wa: add dummy blits before command MI_ARB_CHECK
to guarantee that all subblt got complete for previous copy
affect xe hpg

Related-To: NEO-7450

Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-03-07 10:21:05 +01:00
Michal Mrozek
5dda2dba61 Remove not needed debug variables.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2023-03-07 10:05:28 +01:00
Joshua Santosh Ranjan
b180a83a24 [Sysman] Add support to control lifetime of file descriptor
This patch adds support to open and close the drm fd,
so that more granular control of drm fd could be
achieved.

Related-To: LOCI-3986

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2023-03-06 17:55:13 +01:00
Jaroslaw Chodor
f7cf09d195 fix(ocl) fixing race condition in createFclTranslationCtx
In rare case of multiple threads trying to set fclBaseTranslationCtx,
there was a potential for use after free (double delete) on
std::unique_ptr::reset.

Resolves: NEO-7767

Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2023-03-06 16:47:18 +01:00
Mateusz Jablonski
5b2e1f619c fix hw config linux: set slice info based on slice count
Related-To: NEO-7622
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-06 15:47:40 +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
Maciej Plewka
52d322e738 Move barrier flush property from csr to cmdQueue
Related-To: NEO-6982, HSD-15010621906

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-03-03 14:33:53 +01:00
Zbigniew Zdanowicz
072233d170 compute events select device memory for xe hpg family
Related-To: NEO-7765

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-03 13:39:28 +01:00
Zbigniew Zdanowicz
a65d50b0dc Add timestamp buffer allocation type to aub one time writeable
Related-To: NEO-7765

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-03 12:56:50 +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
Yates, Brandon
7903617a44 fix(l0debug): Fix state save area size on some hw configs
regHeader.num_slices coming from system routine header is
incorrect on some hw configs. This fixes the value in neo
before using to size the state save area allocation

Related-to: LOCI-3937

Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2023-03-02 18:35:32 +01:00
Jaime Arteaga
a87fd77fd4 feature: Add debug key to enable cross-shared concurrent p2p access
Current support in the stack does not allow for concurrent access to
shared-allocations from host and peer devices when using page-faults.

So disable caps for now and introduce debug key for experimentation.

Access will be added by default as support in the stack becomes
available.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-03-02 18:29:28 +01:00
Michal Mrozek
c77d954900 [perf] simplify setting constant buffer and improve performance
- no need to count parameters
- remove unrecoverable which requires fetching additional fields.

Related-To: NEO-5170

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2023-03-02 13:09:52 +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
Krystian Chmielewski
5caf7f7290 feat(linker): allow use of local symbols
This commit adds support for handling local symbols.
* Added 2 fields to SymbolInfo - binding, and associated
instructions segment id.
* Simplified code for decoding elf symbols and relocations.
* Simplified code for patching instruction segments.
* Changed logic of decodeElfSymbolTableAndRelocations:
* Add every global symbol to symbol map.
* Add any local symbol used by relocation to symbol map.
* Changed logic of link:
* After performing relocations remove local symbols from map.
* Replaced UNRECOVERABLE_IF with returning error.
* Removed LocalSymbolInfo structure used before for local kernel jumps.
* Removed old tests.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2023-03-02 12:39:21 +01:00
Mateusz Jablonski
bd32b21f7c refactor: add method to get hw config from CompilerProductHelper
Related-To: NEO-7622

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-02 08:25:50 +01:00
Dunajski, Bartosz
6b7c4564d5 Optimize CPU copy path during appendMemoryCopy call
Instead of sending appendBarrier, wait for Events on host.

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-02 08:13:37 +01:00
Michal Mrozek
7028d3c0d3 [perf] Remove divisible condition from heuristics.
Related-To: NEO-6989
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2023-03-02 05:42:12 +01:00
Zbigniew Zdanowicz
d3c99f6414 Add level zero heap addressing enum, property and debug key
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-01 18:28:00 +01:00
Zbigniew Zdanowicz
42b8a536db Fix redundant state base address dispatch
This fix handles scenario when regular command list uses context first,
then immediate command list is used for the first time.

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-01 10:08:55 +01:00
Lukasz Jobczyk
80c1e28947 Optimize ULLS init mutex
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-28 18:08:54 +01:00
Lukasz Jobczyk
33121281a6 Add comment describing copyCommandBufferIntoRing
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-28 13:55:09 +01:00
Kacper Kasper
aece8195eb Add support for cl_ext_float_atomics
Resolves: NEO-6596

Signed-off-by: Kacper Kasper <kacper.k.kasper@intel.com>
2023-02-28 10:26:48 +01:00
Milczarek, Slawomir
674691d170 Fix check for page faults enabled in get memory access properties
Related-To: NEO-6465

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-02-28 10:13:25 +01:00