Commit Graph

3079 Commits

Author SHA1 Message Date
Kacper Nowak
65f7ff2027 Ocloc: Add -s to options string for non-spirv input with -g option passed
Automatically add "-s" (source path) option if -g flag is present.
This applies only to non-spirv input.
- Due to conflict, do not automatically append source path when
CMC compiler is used.
- Minor code refactor: use defined compiler options instead of local
strings; wrap filename in quotes (in case of space-separated filename
string).

Related-To: NEO-7285
Signed-off-by: Kacper Nowak kacper.nowak@intel.com
2022-10-04 14:49:53 +02:00
Zbigniew Zdanowicz
9cd47ffeaf Add ownership management when ensuring space for shared heaps
Related-To: NEO-7142

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-10-04 12:27:11 +02:00
Szymon Morek
383f33b482 [L0][XE_HPC]Perform memcpy on CPU by default
Related-To: NEO-7237

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-10-04 11:39:30 +02:00
Zbigniew Zdanowicz
3d92186362 Add heap sharing to immediate command lists
This change is intended to be used in immediate command lists that are
using flush task functionality.
With this change all immediate command list using the same csr will consume
shared allocations for dsh and ssh heaps. This will decrease number of SBA
commands dispatched when multiple command lists coexists and dispatch kernels.
With this change new SBA command should be dispatched only when current heap
allocation is exhausted.
Functionality is currently disabled and available under debug key.
Functionality will be enabled by default for all immediate command lists
with flush task functionality enabled.

Related-To: NEO-7142

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-10-03 18:50:10 +02:00
Yates, Brandon
71bef6094d Use max enabled slice in debugger thread mapping
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-10-03 18:11:50 +02:00
Compute-Runtime-Validation
95434f446f Revert "Retry in loop when exec or bind fails with ENXIO"
This reverts commit ec13b185a3.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-10-01 12:13:35 +02:00
Jaime Arteaga
aab24e6552 Add support for PRELIM_I915_PARAM_SET_PAIR (2)
Fix query for SET_PAIR.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-09-30 21:20:00 +02:00
Maciej Bielski
11eb0aa769 Do not bind command buffer separately
Improve performance by binding the command buffer together with other
allocations if VM_BIND feature is available. Remove the legacy
flag PassBoundBOToExec from DebugManager to simplify the logic.
Adapt unit tests and reuse handy macros to generate proxy mock-methods.

Related-To: NEO-7348
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2022-09-30 18:46:16 +02:00
Michal Mrozek
e6daa207ad sizeUsed doesn't have to be atomic.
Linear stream is always being updated under mutex.
Massive improvement for whole zeCommandListAppendLaunchKernel +20%.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-09-30 17:07:21 +02:00
Michal Mrozek
2cb4cc3278 Optimize getSpace method for size 0.
Add early return for this case.
+32% performance gain.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-09-30 16:04:34 +02:00
Compute-Runtime-Validation
ab8579a6c2 Revert "Ocloc: Add -s to options string for non-spirv input with -g option pa...
This reverts commit 963930925a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-30 13:11:46 +02:00
Dunajski, Bartosz
48824acab2 Improve SBA programming
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-30 12:07:16 +02:00
Jaime Arteaga
a3b3f3e86e Add support for PRELIM_I915_PARAM_SET_PAIR
This extension allows pairing two buffer objects so they can be
exported using a single dma-buf handle. When imported, a single
buffer object is created with a total size of the two buffer
objects.

Related-To: LOCI-3355

Sync to
https://github.com/intel-gpu/drm-uapi-helper/releases/tag/v2.0-rc15

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-09-29 23:41:39 +02:00
Kacper Nowak
963930925a Ocloc: Add -s to options string for non-spirv input with -g option passed
Automatically add "-s" (source path) option if -g flag is present.
This applies only to non-spirv input.
- Due to conflict, do not automatically append source path when
CMC compiler is used.

Related-To: NEO-7285
Signed-off-by: Kacper Nowak kacper.nowak@intel.com
2022-09-29 18:48:09 +02:00
Kamil Diedrich
5d3f82a8a5 Taking into account additionals heaps in gpu VA reservation in WSL
Related-To: NEO-7337

Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2022-09-29 14:35:16 +02:00
Compute-Runtime-Validation
9a1102bb7a Revert "Add debug flag to enable specific PIPE_CONTROL fields"
This reverts commit 2e7c90e58f.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-29 10:22:25 +02:00
Compute-Runtime-Validation
dc68cf0fe2 Revert "[L0][XE_HPC]Perform memcpy on CPU by default"
This reverts commit 7ded401615.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-29 08:07:46 +02:00
Maciej Plewka
ec13b185a3 Retry in loop when exec or bind fails with ENXIO
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-09-29 06:23:41 +02:00
Kamil Kopryk
1c446ff213 Remove wait on user fence during cmdlist destroy/reset
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-7158
2022-09-28 16:46:10 +02:00
Krzysztof Gibala
2e7c90e58f Add debug flag to enable specific PIPE_CONTROL fields
FlushSpecificCache equivalent in value:

dcFlushEnable 	 				0b000000000001
renderTargetCacheFlushEnable  			0b000000000010
instructionCacheInvalidateEnable  		0b000000000100
textureCacheInvalidationEnable  		0b000000001000
pipeControlFlushEnable  			0b000000010000
vfCacheInvalidationEnable  			0b000000100000
constantCacheInvalidationEnable  		0b000001000000
stateCacheInvalidationEnable  			0b000010000000
tlbInvalidation  				0b000100000000
hdcPipelineFlush 				0b001000000000
unTypedDataPortCacheFlush 			0b010000000000
compressionControlSurfaceCcsFlush 		0b100000000000

Setting multiple cache at once for example:

constantCacheInvalidationEnable
textureCacheInvalidationEnable
vfCacheInvalidationEnable 			0b000001101000

Related-To: NEO-6049
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-09-28 11:17:03 +02:00
Jim Snow
eaa4965ae8 Allocate RTDispatchGlobals as unboxed array
Previously we used an array-of-pointers approach, but using an
array-of-structures is in some ways simpler.

We also split out the RTStack as a separate allocation.

Related-To: LOCI-2966

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2022-09-28 03:42:14 +02:00
Dominik Dabek
d8b7d56160 Copy host ptr on cpu if possible in clCreateBuffer
use cpu copy with locked pointer if possible
because this is faster than copy on gpu
limit to buffers of size at most 64kb

Related-To: NEO-7332

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-09-27 17:54:06 +02:00
Szymon Morek
7ded401615 [L0][XE_HPC]Perform memcpy on CPU by default
Related-To: NEO-7237

Enable copy on cpu by default.
This commit also changes barrierCounter to bool
barrierCalled

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-09-27 17:32:56 +02:00
Krystian Chmielewski
596e9f815c 32bit zebin support
This commit adds support for 32 bit zebinary in NEO runtime and in
ocloc validate.

Resolves: NEO-7288

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-09-27 11:12:05 +02:00
Spruit, Neil R
b5b9c3500f Support for L0 to read Device LUID from the WDDM driver using EXT Properties
- Added Support for reading the Device LUID of the given device used in
Windows WDDM.
- Added inital support for passing back the NodeMask of 1.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2022-09-27 08:18:50 +02:00
Compute-Runtime-Validation
d7eacc0280 Revert "Support for L0 to read Device LUID from the WDDM driver using EXT Pro...
This reverts commit af3dd2859b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-27 06:20:55 +02:00
Spruit, Neil R
af3dd2859b Support for L0 to read Device LUID from the WDDM driver using EXT Properties
- Added Support for reading the Device LUID of the given device used in
Windows WDDM.
- Added inital support for passing back the NodeMask of 1.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2022-09-26 19:05:05 +02:00
Zbigniew Zdanowicz
f0888fece2 Rename command list tracking debug flag and variables
This change reflects exact nature of debug variable and what is code
actually doing

Related-To: NEO-7187

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-26 18:59:39 +02:00
Michal Mrozek
2fbc1f652b Choose alignment as next power of 2 for HEAP_EXTENDED allocations.
This way we will get as big pages as possible without leftovers.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-09-26 16:42:59 +02:00
Mateusz Hoppe
7ff258fc92 L0Debug - Enable attaching to Root or Subdevices
- enable tile attach mode by default
- both root device and subdevice may be attached to

Related-To: NEO-7347

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-09-26 16:03:54 +02:00
Zbigniew Zdanowicz
57d35c8932 Add state compute mode tracking
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-26 14:36:37 +02:00
Szymon Morek
ec04de61a7 [L0][XE_HPC]Perform memcpy on CPU for non-usm ptrs
Related-To: NEO-7237

If size is small enough, it is more efficient to
perform copy through locked ptr on CPU.
This change also introduces experimental flag to
enable this.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-09-26 13:20:40 +02:00
Bellekallu Rajkiran
7f8e9378b6 Adjust ccs on reinit
Parse and adjust ccs count on reset so that initial
environment is restored.

Related-To: LOCI-3435

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2022-09-26 11:24:21 +02:00
Zbigniew Zdanowicz
a95ab1d16b Share pipeline select state updates between regular and immediate command lists
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-26 11:14:53 +02:00
Luzynski, Sebastian Jozef
bac85ddb25 Move kernel globals from SVM to USM device
With this change, module's data sections will be allocated in USM device
pool instead of SVM or USM shared.

Signed-off-by: Luzynski, Sebastian Jozef <sebastian.jozef.luzynski@intel.com>
2022-09-23 23:06:15 +02:00
Compute-Runtime-Validation
f5575a1370 Revert "Remove fallback path for PAT index programming"
This reverts commit faf8d51f6d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-23 20:46:31 +02:00
Dunajski, Bartosz
6175a3e785 Debug flag to force stateless mocs encryption bit
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-23 15:19:26 +02:00
Zbigniew Zdanowicz
5986a7199a Share front end state updates between regular and immediate command lists
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-23 09:46:35 +02:00
Zbigniew Zdanowicz
e960802e33 Add pipeline select state tracking
This optimization removes pipeline select from command list preamble
and presented to command queue for necessary state update.
Code is disabled by default and available under debug key.

Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-23 08:21:00 +02:00
Compute-Runtime-Validation
7aecea534f Revert "Default L0 Function & Global Symbols with fallback build for SPIRv"
This reverts commit 88b7a4f82d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-23 07:07:04 +02:00
Dunajski, Bartosz
98db084b59 Debug flag to append api module build options
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-22 16:03:58 +02:00
Dunajski, Bartosz
b2001bf265 L0: GRF mode debug flags support
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-22 15:27:31 +02:00
Yates, Brandon
7dc36ca422 L0 Win Debugger - fix slice mapping bug
Related-to: LOCI-3429
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-09-22 14:40:13 +02:00
Fabian Zwolinski
645600d141 Return error when there is no memory to evict
We want to return error code to the application instead of aborting when
we are not able to make more memory resident.

Related-To: NEO-7289
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-09-22 14:26:55 +02:00
Mateusz Jablonski
501873d0e0 Add virtual keyword to IoctlHelper methods for frequency files
Related-To: NEO-7300

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-09-22 14:13:03 +02:00
Maciej Plewka
1458602efc Store indirect residency at command queue level
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-09-22 14:07:19 +02:00
Zbigniew Zdanowicz
81f2d04f5a correct and unify programming of front end disable overdispatch property support
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-22 13:13:38 +02:00
Naklicki, Mateusz
ec3668fc18 Add initialization method to ioctl helpers
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-09-22 11:55:59 +02:00
Krystian Chmielewski
311b0b0020 Create input for linker during zebin decoding
Remove code duplication. Parsing zebin elf for relocations and symbols
is moved to decodeSingleDeviceBinary.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-09-22 11:12:39 +02:00
Neil R Spruit
88b7a4f82d Default L0 Function & Global Symbols with fallback build for SPIRv
- Enabled default setting of Program & Global Symbols to be generated by
IGC when building L0 Modules with the ability to fallback to previous
behavior thru build failure checks.

- Enabled selective disable of default program or global symbol
generation thru debug variables.

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2022-09-22 02:40:51 +02:00