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
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
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
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
Igor Venevtsev
43676ed02a
L0Debug Win: initialize device with empty submission
...
In case of debuggable context device should be additionally
initialized by early empty submission issue.
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-09-21 12:02:34 +02:00
Milczarek, Slawomir
0192e8038f
Check for GPU hang in path with wait for timestamps
...
Related-To: NEO-6868
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-09-19 15:01:46 +02:00
Zbigniew Zdanowicz
cee520b311
simplify systolic mode code and reduce double implementation
...
Related-To: NEO-5019
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-15 11:57:54 +02:00
Patryk Wrobel
90ba50bf52
Warn when RAII lock returned from function is discarded
...
Discarding RAII lock returned from function almost always
is a bug. This change introduces usage of [[no_discard]]
attribute from C++17 to prevent such misues.
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-09-01 16:53:03 +02:00
Zbigniew Zdanowicz
c3f7e40a8d
Rename special pipeline select mode to systolic
...
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-31 22:16:26 +02:00
Dunajski, Bartosz
98d776867f
Add initial support for KernelArgsBuffer allocation
...
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-03 20:28:21 +02:00
Zbigniew Zdanowicz
0c301e5e99
Limit preemption programming in level zero command queues
...
When multiple command queues use the same context and retain the same state
No preemption programming for copy command queues
Program preemption preamble only for mid thread preemption
Related-To: NEO-7187
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-28 10:05:10 +02:00
Zbigniew Zdanowicz
469ab367b1
Limit number of pipeline select commands when using multiple command queues
...
Related-To: NEO-7187
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-27 12:44:03 +02:00
Kamil Kopryk
d4d54f5093
Cleanup includes
...
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-25 09:58:38 +02:00
Lukasz Jobczyk
4ac6e09117
Do not reuse mem obj's allocation
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-07-19 11:42:17 +02:00
Compute-Runtime-Validation
f53ae0a50e
Revert "Add debug flag for EOT WA"
...
This reverts commit cf3817e058
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-09 01:21:56 +02:00
Mateusz Jablonski
cf3817e058
Add debug flag for EOT WA
...
EOT WA requires allocating last 64KB of kernel heap and putting EOT
signature at the last 16 bytes of kernel heap
Related-To: NEO-7099
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-07 16:58:24 +02:00
Bartosz Dunajski
f4485ec541
Use LogicalStateHelper for SIP programming
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-22 13:46:57 +02:00
John Falkowski
620bb970f4
Resubmit fix for task count hang
...
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2022-06-07 16:28:17 +02:00
Patryk Wrobel
9b2ad0c5df
Detect GPU hangs in flushBcsTask()
...
This change introduces detection of GPU hangs in flushBcsTask()
function. The new code has been covered with ULTs.
Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-05-12 16:17:16 +02:00
Zbigniew Zdanowicz
910871a706
add multi-tile support for completion diagnostic
...
Related-To: NEO-6871
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-05-11 13:37:32 +02:00
Mateusz Jablonski
ffd1c430b1
feature: use completion fence value from direct submission when available
...
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-28 15:38:11 +02:00
Krzysztof Gibala
a3745c28a3
Create peekGmmHelper function in CSR
...
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-04-28 12:54:32 +02:00
Lukasz Jobczyk
72f6ef7d2b
Do not submit to gpgpu during blit in immediate dispatch mode
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-04-28 11:36:42 +02:00
Mateusz Jablonski
03185f7111
feature direct submission: use tag allocation as a completion fence
...
use tag allocation address as a completion address in exec call
wait for completion value before destroying drm direct submission
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-25 13:30:55 +02:00
Mateusz Jablonski
8f38f4ee3c
fix command stream receiver: stop calling virtual methods in dtor
...
make getCompletionAddress and getCompletionValue non-virtual methods
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-20 17:41:54 +02:00
Mateusz Jablonski
b5b8762faf
refactor direct submission: Pass command stream receiver to ctor
...
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-19 23:02:55 +02:00
Lukasz Jobczyk
b67b1bd6fc
Download tag allocation only if was submitted
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-04-13 16:30:47 +02:00
Zbigniew Zdanowicz
fd45ac133d
Unify append calls
...
Related-To: NEO-6242
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-04-07 10:18:55 +02:00
Dominik Dabek
4044320301
Limit allocations in execute command list
...
Reserve space in ResidencyContainer
Related-To: NEO-6837
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-04-06 15:00:34 +02:00
Mateusz Jablonski
9d502dea25
Refactor waitOnCompletionFence method in DrmMemoryManager
...
get completion address and value from command stream receiver
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-31 19:30:16 +02:00
Dominik Dabek
308f9ccfff
Do not allocate dynamic state heap if not needed
...
Dynamic state heap is only used for sampler data.
Related-To: NEO-6821
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-31 12:13:13 +02:00
Jobczyk, Lukasz
a285712cc4
Add missing download allocation calls
...
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-31 09:49:22 +02:00
Lukasz Jobczyk
a230f267e1
Poll task count indefinitely on high throttle command queue
...
Resolves: NEO-6781
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-25 10:06:16 +01:00
Filip Hazubski
32b0f7b014
Remove redundant value CsrSizeRequestFlags::numGrfRequiredChanged
...
Related-To: NEO-5995
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-15 15:08:15 +01:00
Lukasz Jobczyk
999c6424a4
While enqueue blit do not flush gpgpu if already flushed
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-03 13:01:57 +01:00
Patryk Wrobel
7f729b7f89
Detect GPU hang in clWaitForEvents
...
This change:
- moves NEO::WaitStatus to a separate file
- enables detection of GPU hang in clWaitForEvents
- adjusts most of blocking calls in CommandStreamReceiver to return WaitStatus
- adds ULTs to cover the new code
Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-02-23 13:33:09 +01:00
Patryk Wrobel
1275c4e200
Detect GPU hang in remaining blocking calls of L0
...
This change introduces detection of GPU hangs in
zeEventHostSynchronize and zeFenceHostSynchronize.
Furthermore, if CommandQueueHw::executeCommandLists
uses ZE_COMMAND_QUEUE_MODE_SYNCHRONOUS and hang occurs,
the information about it is propagated to the caller.
Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-02-16 14:47:29 +01:00
Bartosz Dunajski
52c6973e89
Rename blitBuffer method
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-03 15:02:55 +01:00
Maciej Plewka
9d8ce7aace
Command container appends BB_END on cmd buffer allocation end
...
When linear stream created for command container has not enough space
for command and BB_END it will program BB_END and allocate new command
buffer allocation. Pointer returned from getSpace in this case will
return storage from new command buffer allocation.
Related-To: NEO-5707
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-01-31 16:15:37 +01:00
Patryk Wrobel
498cf5e871
Implement GPU hang detection
...
This change uses DRM_IOCTL_I915_GET_RESET_STATS to detect
GPU hangs. When such situation is encountered, then
zeCommandQueueSynchronize returns ZE_RESULT_ERROR_DEVICE_LOST.
Related-To: NEO-5313
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-01-31 13:48:17 +01:00
Maciej Plewka
f8c104feaa
Use fw declaration of IndirectHeap in CommandContainer
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-01-26 13:30:26 +01:00
Kamil Diedrich
1b7949432f
Add shareable allocation on windows dGPUs
...
Add default initialization for object members
Related-To: LOCI-2665
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2022-01-19 19:03:18 +01:00
Zbigniew Zdanowicz
4238679078
Refactor implicit scaling device support
...
Related-To: NEO-6589
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-01-18 13:08:43 +01:00
Raiyan Latif
394c0e90e1
Return error when failing on submission
...
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2022-01-12 16:42:30 +01:00
Lukasz Jobczyk
b59b0b6b36
Download timestamps before checking completion
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-28 08:14:27 +01:00
Filip Hazubski
f4c151cce5
Refactor PipeControlArgs struct
...
Remove struct PipeControlArgsBase
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-22 17:13:16 +01:00
Filip Hazubski
461e6d841d
Remove redundant thread arbitration policy variables for SCM
...
Remove CommandStreamReceiver::lastSentThreadArbitrationPolicy
Remove CommandStreamReceiver::requiredThreadArbitrationPolicy
Related-To: NEO-5995
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-17 19:47:59 +01:00
Lukasz Jobczyk
1f0c58d0bf
Refactor timestamp wait mechanism
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-16 13:22:19 +01:00
Zbigniew Zdanowicz
01348451db
Add multi tile barrier to marker command on multi tile device
...
Related-To: NEO-6262
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-13 18:14:39 +01:00
Filip Hazubski
3511b4755f
Remove redundant coherency variables for SCM
...
Remove CommandStreamReceiver::lastSentCoherencyRequest
Remove CsrSizeRequestFlags::coherencyRequestChanged
Related-To: NEO-5995
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-09 14:43:21 +01:00