Commit Graph

3660 Commits

Author SHA1 Message Date
Tratnack, Geoffrey
1b9c510614 Update to command_encoder, fix bug changing dynamic state memory
Adding ULT for encode and command container changes
Refactor getHeapSpaceAllowGrow and getHeapWithRequiredSizeAndAlignment

Signed-off-by: Tratnack, Geoffrey <geoffrey.tratnack@intel.com>
Related-To: LOCI-3365
2022-10-11 03:40:25 +02:00
Michal Mrozek
2eb47bd73e Optimize makeResident call.
Some portions only make sense in Batching mode.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-10-10 19:56:29 +02:00
Michal Mrozek
809abb005f Optimize flushTask.
Move Batching code under batching if to not call not required functions.
Update task level only if level is closed.
70ns gain.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-10-10 19:22:43 +02:00
Krystian Chmielewski
4f0d19628e Ocloc asm/disasm support for zebin
This commit adds option to disassemble and assemble zebinary.

Disasm disassembles zebinary into sections. Text sections are
translated to assembly, relocations and symbols are
translated into human readable format.

Asm assembles zebinary from files generated by disasm.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-10-10 14:48:55 +02:00
Mateusz Hoppe
cdffa8619c Fix help in generate_cpp_array tool
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-10-10 13:19:07 +02:00
Krystian Chmielewski
73a58aaf9e feat(zebin): inline sampler
Add support for inline samplers in zebin.
Generate required SAMPLER_STATEs in DSH.

Resolves: NEO-7388

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-10-10 12:47:19 +02:00
Lukasz Jobczyk
b21fef96cb Wait for events from host
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-10-10 12:12:13 +02:00
Fabian Zwolinski
7953d15826 Print warning when kernel uses too much SLM
Instead of just returning proper error code in case of exceeding
available Shared Local Memory size we also want to print error message
to make debugging easier.

Related-To: NEO-7280
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-10-07 19:06:19 +02:00
Kacper Nowak
d4cddc7ecd Zebin: fix segfault in zebin decoder
Current implementation of getIntelGTNotes function causes
segfault in case empty owner name string would be passed.
This commit removes potential out-of-bound array access.
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-10-07 17:32:09 +02:00
Mateusz Hoppe
af4e3d510e Refactor DebugApiWindows tests
- copy att bitmask to event in tests, not in mockWddm
- simplifies logic, gets rid of redundant struct, allows
setting different att bitmask for every event

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-10-07 11:45:25 +02:00
Igor Venevtsev
5a0dd8048b L0Debug Win: fix bitmap reading for EU_ATTN_BIT_SET event
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-10-06 15:41:14 +02:00
Dunajski, Bartosz
caaf82bb83 Fix L3 size query
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-10-06 10:46:39 +02:00
Dunajski, Bartosz
ad2d3d0289 Remove not used method
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-10-05 17:10:51 +02:00
Zbigniew Zdanowicz
88113fbaad enable shared heaps feature on XE_HPC platforms
Related-To: NEO-7142

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-10-05 14:50:42 +02:00
Neumann, Marta
1b669f52d8 Embed NEO regkeys in AUB file
Resolves: NEO-3105

Signed-off-by: Neumann, Marta <marta.neumann@intel.com>
2022-10-05 14:49:13 +02:00
Szymon Morek
5c26ecf004 Remove duplicated code in command container
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-10-05 14:32:52 +02:00
Szymon Morek
17655e3ed3 [L0][XE_HPC]Perform memcpy on CPU by default
Related-To: NEO-7237

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-10-05 14:12:39 +02:00
Zbigniew Zdanowicz
322719e7a2 prepare tests to enable heap sharing feature
Related-To: NEO-7142

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-10-05 11:54:16 +02:00
Compute-Runtime-Validation
cfd96980a0 Revert "[L0][XE_HPC]Perform memcpy on CPU by default"
This reverts commit 383f33b482.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-10-05 08:17:23 +02:00
Dunajski, Bartosz
52b63be026 Remove isCleanLeftoverMemoryRequired() + refactor sampler support path
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-10-04 16:24:03 +02:00
Szymon Morek
6073702941 Reuse command buffer for immediate cmdlist
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-10-04 16:02:18 +02:00
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
Jaime Arteaga
a4f13e1984 Add support for PRELIM_I915_PARAM_SET_PAIR (3)
Add some ULTs.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-10-03 19:15:25 +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
Joshua Santosh Ranjan
8240f65434 Remove Sysman dependency from Iaf nl interfaces
This patch makes iaf nl interfaces in sysman be usable
by other modules.
1.change Iaf_nl interfaces to remove sysman dependencies
2.move iaf specific interfaces(getPorts()) to iaf specific file
3.move iaf_nl files to sysman/linux

Related-To: LOCI-3357

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-10-01 01:46:14 +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
Baj, Tomasz
0eab93501c Add cl_cache mechanism to ocloc
Related-To: NEO-6476

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-09-30 12:03:02 +02:00
Mateusz Hoppe
4292a47c53 Add Unit test for deferred deleter
- test run() function

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-09-30 11:37:45 +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
Krystian Chmielewski
af57d2bd38 refactor ocloc interface
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-09-29 13:25:58 +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