Commit Graph

73 Commits

Author SHA1 Message Date
b7cee61bde Revert "Fail build program in shared system USM + stateful access case"
This reverts commit 0ad8afc0b3.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-12-07 01:00:59 +01:00
0ad8afc0b3 Fail build program in shared system USM + stateful access case
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075

After this change driver will fail clBuildProgram/zeModuleCreate api calls
whenever stateful access is discovered and device has shared system usm caps
enabled.This is required since in this case allocation greater than 4GB
will not work.
If user still wants to use stateful addressing mode,
-cl-opt-smaller-than-4GB-buffers-only / -ze-opt-smaller-than-4GB-buffers-only
build option should be passed as build option, but then user can not use
buffers greater than 4GB.
2021-12-06 15:10:16 +01:00
b11d7cd7b0 Add debug key for compiler internal options injection
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-11-23 15:41:11 +01:00
8e57e48695 L0: Pass debug zebin to SLD
Added passing debug zebin to SLD.
Added support for .const.data.strings section in debug zebin creation.
Refactored debug zebin creation code.

Resolves: NEO-6246
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-18 11:38:23 +01:00
75a5aed81d Refactor patching implicit args relocation
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-15 17:09:36 +01:00
d29148a73a Populate linkerInput before allocating globals
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-09 12:20:13 +01:00
06eaef0352 Zebin: Use strings section for printf
Resolves: NEO-6143

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-07 19:10:47 +01:00
38eab0e70f Return correct status when module is not fully linked
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-10-13 16:18:42 +02:00
12ab2961b1 L0 support for SPIRv static module linking
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-10-05 07:09:53 +02:00
25c71a6c13 Move kernel info to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-29 23:49:49 +02:00
e7a7a61b4e Revert "L0 support for SPIRv static module linking"
This reverts commit 479035c839.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-09-24 05:47:50 +02:00
479035c839 L0 support for SPIRv static module linking
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-09-22 23:38:50 +02:00
0d1c8be447 Handle implicit arg relocation in L0 module
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-14 08:57:10 +02:00
30f411de44 Make allocation writable for TBX and AUB when patching ISA
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-08 10:51:41 +02:00
3389c452c7 Added Link Log for L0 Dynamic Module Linking
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-08-24 07:19:23 +02:00
d119494854 L0 Support for Dynamic Module Linking for undefined symbols
- Support for L0 apps to handle undefined symbols reported by IGC
- Removed duplication of symbol in exported symbol list and relocation
for properly resolving the symbol during dynamic link
- Add export module's exported function surface state to the import
module's residency container during dynamic linkage to allow import
kernels to execute exported functions.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-08-13 19:26:41 +02:00
5d49dedf00 Revert "L0 Support for Dynamic Module Linking for undefined symbols"
This reverts commit e602f4829d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-08-13 10:33:13 +02:00
e602f4829d L0 Support for Dynamic Module Linking for undefined symbols
- Support for L0 apps to handle undefined symbols reported by IGC
- Removed duplication of symbol in exported symbol list and relocation
for properly resolving the symbol during dynamic link
- Add export module's exported function surface state to the import
module's residency container during dynamic linkage to allow import
kernels to execute exported functions.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-08-12 21:30:13 +02:00
7c6c45f5b5 Add option to allocate private mem per dispatch
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-27 13:34:12 +02:00
4ba64d2530 Add ze-opt-level support
Related-To: LOCI-2315
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2021-07-20 20:34:57 +02:00
1b2cfbbb1f Align per thread data size to GRF size
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-15 11:53:13 +02:00
7c8fcb30ed Module: Force stateless compilation if system shared allocations allowed
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-29 13:54:40 +02:00
3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
8fd65cc6bf Do not append debugKernelEnable internal option
- module compilation does not need it when L0 debugger used

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-05-11 08:20:22 +02:00
ef71915c71 Remove KernelArgInfo and use KernelDescriptor's args instead
Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-04-23 15:12:09 +02:00
ffc310858a Add DebugVariable to control opt-disable when debugger is used
Resolves: NEO-5760

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-04-19 16:41:14 +02:00
0897f997d6 Fix zeModuleGetGlobalPointer()
- return size correctly
- check if pSize and pPtr is != nullptr

Resolves: NEO-5641

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-03-18 17:29:41 +01:00
c1cabb505a Fix Get ConstSpecSize based on correlated ConstSpecID
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-03-02 12:11:08 +01:00
c0268abc26 Revert "Take spec const value sizes from compiler"
This reverts commit da3805880b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-02-26 16:22:10 +01:00
da3805880b Take spec const value sizes from compiler
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-02-25 10:42:21 +01:00
6dd0f0c728 Relocate debug data
Related-To: NEO-4769

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-16 14:59:30 +01:00
718e4149a8 Add enable-kernel-debug option when debugger is used in L0
- correctly verify debug capabilites in Module

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-08 17:12:02 +01:00
5d2ea72db6 Handle relocations from zeBin
Related-To: NEO-5323

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-21 13:16:38 +01:00
d7ea713c5f Revert "Initialize kernel immutable data when kernel is created"
This reverts commit a6ac10088c.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-01-04 11:11:39 +01:00
a6ac10088c Initialize kernel immutable data when kernel is created
This instead of when the associated module is created, to avoid
allocating memory for kernels that are never created nor used.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-12-29 19:29:10 +01:00
720ba46548 Register kernel Elf for debugging purpose
Signed-off-by: macabral <matias.a.cabral@intel.com>
2020-12-01 17:16:14 +01:00
8cac8d4b51 Fix possible device nullptr dereference
- abort will be called if device is nullptr

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-26 22:51:44 +01:00
3e69b2084c Add support for zeModuleGetProperties
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2020-11-21 23:14:30 +01:00
905d59d7e3 Allow disabling statefull optimization in L0
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-11-18 22:33:05 +01:00
28de4068c9 Read bindless offset from patch token
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-11-18 17:04:00 +01:00
0f42ef1ed7 Differentiate between users ISA and internal ISA allocation
Related-To: NEO-5240

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-16 13:16:30 +01:00
3f7af19c8f Pass bindless options to compiler when bindless enabled
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-11-10 11:30:56 +01:00
9f08a60a20 KernelInfo Refactor
Using kernelDescriptor.kernelMetadata.kernelName instead of
kernelInfo.name

Change-Id: I11f5721d8072a3beccb573cec4bea56cf14cf0f9
2020-10-20 13:18:09 +02:00
fb0651521d Linker: Fix incremental patching for local memory allocations
Change-Id: Ib85e4a2abc8a62477003853aa0c35f8107444f4e
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-09 09:13:42 +02:00
ff85c29e5c Do not recompile kernel if intermediate is empty
Related-To: NEO-5020

Change-Id: Ie71e1ac67a74309a90a899adb830a551922c5f35
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-10-06 13:47:25 +02:00
746cf7fd33 Reuse old build options if new ones are NULL
Change-Id: I435e7ec8554b0429dcf4f6f8d9d4fd80e70b68c6
2020-10-04 16:54:02 +02:00
df2e76f526 Fixing residency of extern device functions
Change-Id: Icad696cbf6fb3fc0276f0d0d488bf92091525d9b
2020-10-02 12:27:59 +02:00
55bd544402 Lazy evaluate arguments of printDebugStrings(...) function
Change-Id: Ie44e109fd9235c5df32fb90b9e6fc6058e558a99
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-25 18:38:58 +02:00
d0a6b8aece Adjust BuildOptions used in level_zero
Change-Id: I0974127beca07012758d4e57402867754c94d388
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-09-15 16:41:36 +02:00
a5c556fe11 Create TestEnvironment in ze_intel_gpu_core_tests
Change-Id: I85306b59e220c34ee6b43790b59f5ad96ea51eca
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-09-11 09:53:58 +02:00