Mateusz Hoppe
5956aea18d
Limit header includes from level_zero device.h
...
- remove including debugger_l0.h from device.h
- add getL0Debugger() to shared NEO Device
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2022-07-06 16:41:17 +02:00
Bartosz Dunajski
76d905b1f2
Pass LogicalStateHelper to SBA helper
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2022-07-01 14:52:20 +02:00
Bartosz Dunajski
f2bbd63d37
Refactor SBA handling + fix unit tests
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2022-06-29 13:27:57 +02:00
Bartosz Dunajski
2d976098f5
Use LogicalStateHelper to program FrontEndState
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2022-06-27 19:42:54 +02:00
Lukasz Jobczyk
b1bdd83e13
Disable task count update from wait on regular command lists
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-06-23 19:56:56 +02:00
Bartosz Dunajski
0b5269d4ae
Use LogicalStateHelper to program CSR allocation
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2022-06-22 21:19:57 +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
Mateusz Jablonski
747c2d3d83
Cleanup includes in cmdlist, cmdqueue, context, device, driver and module
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2022-06-03 02:54:41 +02:00
Mateusz Jablonski
2a4c68dc38
Remove not needed dependencies from device_imp.h
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2022-06-02 18:35:34 +02:00
Jaime Arteaga
359e848dbe
Revert "Fix for task count hang issue"
...
This reverts commit 340ba8bf56 .
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2022-05-25 20:34:00 +02:00
Mateusz Hoppe
66c1727398
Program SIP end WA for non-copyOnly cmd queues
...
Resolves: NEO-6949
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2022-05-23 13:51:26 +02:00
John Falkowski
340ba8bf56
Fix for task count hang issue
...
Signed-off-by: John Falkowski <john.falkowski@intel.com >
2022-05-18 19:35:12 +02:00
Aravind Gopalakrishnan
31b2433b2f
Avoid implicit sync for async mode immediate copy queue
...
Related-To: LOCI-1988
Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com >
2022-04-27 08:50:18 +02:00
Mateusz Hoppe
5911515ed0
Refactor debugger code
...
- helper sets all SbaAddresses for debugger in
EncodeStateBaseAddress<GfxFamily>::setSbaAddressesForDebugger()
- change DebuggerL0::captureStateBaseAddress() to take
LinearStream
- move getSbaTrackingCommandsSize() to Debugger class
Related-To: NEO-6845
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2022-04-21 13:04:34 +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
Patryk Wrobel
19dded25ef
Detect GPU hang in remaining calls of command queue and list
...
This change introduces checking of waits status in
CommandQueue and CommandList classes.
Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com >
2022-04-11 13:31:44 +02:00
Zbigniew Zdanowicz
6f0f15a0b8
Save separate flush call for synchronous command queue
...
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2022-04-07 15:51:17 +02:00
Jobczyk, Lukasz
335bf2fdb2
Update flushed task count when task count write was dispatched
...
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com >
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-04-05 11:00:51 +02:00
Filip Hazubski
f09fd527f1
Remove redundant using declarations
...
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2022-04-04 17:10:21 +02:00
Michal Mrozek
9016772351
No dynamic allocations on hot calls [2/n]
...
- Prevent FULL vector copy.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2022-04-01 16:22:09 +02:00
Mateusz Hoppe
beff0019d1
SBA tracking for single address space
...
Related-To: NEO-6539
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2022-04-01 15:24:11 +02:00
Mateusz Hoppe
681c09d314
Extend LinearStream with gpuBase
...
- added methods to set and query gpu base address
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2022-03-29 15:15:53 +02:00
Compute-Runtime-Validation
34a5c6cd28
Revert "Remove programming first SCM from the command list"
...
This reverts commit 9c06af79ad .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-03-28 11:15:35 +02:00
Zbigniew Zdanowicz
bb753784cc
Optimize post sync operations for fence and task count update
...
Related-To: NEO-6242
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2022-03-25 10:57:10 +01: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
Krzysztof Gibala
ebc006ad53
Move SBA related WAs logic from CSR to EncodeWA
...
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com >
2022-03-24 12:24:56 +01:00
Filip Hazubski
9c06af79ad
Remove programming first SCM from the command list
...
For first kernel in command list the required state described with SCM
command is stored and programmed when the command list is executed, only
if current stream state requires reprogramming.
Resolves: NEO-6728
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2022-03-21 11:24:07 +01:00
Zbigniew Zdanowicz
46f4472965
Refactor Fence class interface and implementation
...
Related-To: NEO-6242
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2022-03-21 10:35:26 +01:00
Bartosz Dunajski
c843d152ce
Enable prepatcher WA for L0
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2022-03-11 15:20:32 +01:00
Filip Hazubski
3eab7009ac
Move SCM related WAs logic from CSR to EncodeComputeMode
...
This will help with unifying the logic between APIs and GENs.
Related-To: NEO-6728
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2022-03-11 14:00:53 +01:00
Konstanty Misiak
cf1bc3a2ba
Disable EU fusion based on kernel properties from compiler
...
Related-To: NEO-6633
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com >
2022-02-28 18:50:38 +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
Igor Venevtsev
60d6505932
L0 debugger - reports process ENTER/EXIT events for zeCommandQueues
...
- PROCESS_ENTRY - triggered by first zeCommandQueueCreate()
- PROCESS_EXIT - triggered by last zeCommandQueueDestroy()
Resolves: NEO-6503
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com >
2022-02-16 16:28:33 +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
4b0d986876
Move AllocationType enum out of GraphicsAllocation class
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2022-02-04 17:49:09 +01:00
Dominik Dabek
fb1a008414
Change fences to use tag allocation
...
Instead of creating new allocation per fence, use the task count.
Fence synchronize will wait for task count update.
Related-To: NEO-6634
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-02-02 11:56:29 +01:00
Aravind Gopalakrishnan
63a8908744
[1/n] L0 Immediate Commandlist improvements
...
Add indirect allocs to residency in flushTask
Related-To: LOCI-1988
Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com >
2022-02-01 01:39:23 +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
Michal Mrozek
3d9548cee9
[5/n] Optimize Indirect Allocations.
...
Enable mechanism where feasible.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2022-01-26 16:01:10 +01:00
Michal Mrozek
6df17f5a30
[3/n] Optimize indirect allocations handling.
...
Add new debug variable to trigger new mode.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2022-01-25 16:40:56 +01:00
Fabian Zwolinski
d9bf1886c2
Remove GMock from GMockMemoryManagerFailFirstAllocation, GMockMemoryManager...
...
Removed GMock from
- GMockMemoryManagerFailFirstAllocation
- GMockMemoryManager
- TestEventCsr
- MockKmdNotifyCsr
- MockMemoryOperationsHandlerTests
- GmockGmmMemory
- MockMemoryManagerCommandQueueSBA
- TestCmdQueueCsr
Renamed:
- GMockMemoryManagerFailFirstAllocation -> MockMemoryManagerFailFirstAllocation
Moved class body:
- GMockMemoryManager to MockMemoryManager
- GmockGmmMemory to MockGmmMemoryBase
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com >
2022-01-20 16:08:34 +01:00
Compute-Runtime-Validation
6082865eb4
Revert "Optimize Level Zero indirect allocations handling."
...
This reverts commit 3ecbc55ba9 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-01-20 11:41:13 +01:00
Michal Mrozek
3ecbc55ba9
Optimize Level Zero indirect allocations handling.
...
Make them resident directly instead of populating residency container
Remove finds, not needed, CSR resolves duplicates at makeResident calls
Observed gain is 32x for 10k indirect allocations.
Co-authored-by: Michal Mrozek <michal.mrozek@intel.com >
Co-authored-by: Dominik Dabek <dominik.dabek@intel.com >
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-01-19 13:08:35 +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
Spruit, Neil R
02f075c541
Power Saving Hint Support for Level Zero in Windows
...
- Added Functionality to pass ze_power_saving_hint_type_t to zeContextCreate
included in the pNext extensions in ze_context_desc_t.
- Enables handling a hint value 0-100 with 0 being no power savings
and 100 being maximum power savings.
- ZE_RESULT_ERROR_INVALID_ENUMERATION is returned given an invalid hint.
Related-To: LOCI-2567
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com >
2022-01-06 23:56:59 +01:00
Filip Hazubski
5be4d89b73
Rename function
...
Rename MemorySynchronizationCommands::isDcFlushAllowed
to MemorySynchronizationCommands::getDcFlushEnable
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2021-12-30 17:03:22 +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
9a450d1b74
Pass hwInfo to appendMiFlushDw
...
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2021-12-22 15:22:47 +01:00
Filip Hazubski
0fd685541d
Add isDcFlushAllowed function to HwInfoConfig
...
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2021-12-21 18:29:43 +01:00