Commit Graph

48 Commits

Author SHA1 Message Date
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
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
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
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
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
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
Lukasz Jobczyk
b2f286fc4a Reuse command buffers in L0 command queue
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-09 15:52:36 +01:00
Zbigniew Zdanowicz
f56773d166 Setup partition registers once per context
Related-To: NEO-6262

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-22 22:41:09 +01:00
Zbigniew Zdanowicz
7d109c42bc Do not execute multi-tile command list on single-tile command queue
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-03 13:27:49 +01:00
Raiyan Latif
0859f99d64 Enable zeDeviceCanAccessPeer
- Propagate return value up from Batch Buffer exec
- Add zeDeviceCanAccessPeer functionality

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2021-10-12 09:38:22 +02:00
Zbigniew Zdanowicz
3b35ba504f Adapt command stream receiver to multiple active partitions
Related-To: NEO-6244

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-23 14:32:20 +02:00
Bartosz Dunajski
a2e41716e2 Fix L0 CommandQueue command buffer allocation properties
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-21 16:33:48 +02:00
Rafal Maziejuk
f6c8fb47bb Delete unused L0 function
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-4541
2021-09-13 14:22:59 +02:00
Zbigniew Zdanowicz
cd4f3c221a Synchronize switching command buffers for all partitions
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-08 12:12:23 +02:00
Zbigniew Zdanowicz
6b299a3ab0 Make partitioned post sync operations for partitioned workloads
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-03 20:20:29 +02:00
Filip Hazubski
29c64c3dd0 Disable implicit scaling for cooperative kernels
When implicit scaling is disabled use useSingleSubdeviceValue = true.

Resolves: NEO-5757

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-18 14:56:37 +02:00
Zbigniew Zdanowicz
7b52f587da Disable timeout for inifinite synchronization time
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-08-03 16:34:07 +02:00
Zbigniew Zdanowicz
b454bcbfe7 Make KMD wait function non default and available under debug key
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-08-03 11:24:43 +02:00
Mateusz Hoppe
549b458e2f Add UNRECOVERABLE_IF when bufferAllocation is nullptr
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-07-30 09:59:36 +02:00
Zbigniew Zdanowicz
1b4ceb3d11 Use KMD wait function for infinite timeout synchronization
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-07-22 19:35:36 +02:00
Lukasz Jobczyk
9e50138829 Defer ULLS initialization
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-07-21 15:55:16 +02:00
Zbigniew Zdanowicz
bcd9b2f982 Add debug flag to override command queue synchronous mode
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-07-02 13:03:02 +02:00
Lukasz Jobczyk
fffa22b17d Enhance wait method in L0 command queue
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-06-30 16:41:54 +02:00
Lukasz Jobczyk
3b41378055 Update command buffer task count in L0
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-06-29 16:29:23 +02:00
Maciej Plewka
e1bcad51f0 Fix makeNonResident for csr residency allocations
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-06-10 20:57:15 +02:00
Maciej Plewka
8abbc69fef Revert "Fix update residency task count for all submited allocations"
This reverts commit 2565223a05e410a9113dbf69dd92f68d98578329.

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-06-10 08:41:13 +02:00
Maciej Plewka
925d8ad1eb Fix update residency task count for all submited allocations
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-06-07 11:54:00 +02:00
lgotszal
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
Maciej Dziuban
f5b253207d Fix osContext initialization for L0 immediate command lists
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-05-17 15:05:05 +02:00
Zbigniew Zdanowicz
edc0a93927 Add preemption synchronization flag to command queue
Related-To: NEO-5778

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-28 13:14:18 +02:00
Mateusz Hoppe
671d916c70 Add Debugger specific log print macros
- use DebuggerLogBitmask while printing logs for SBA tracking

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-04-02 15:00:55 +02:00
Jobczyk, Lukasz
343fd602fa Add method to submit kernel on single subdevice
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2020-12-01 22:15:05 +01:00
Vinod Tipparaju
240563099c Clean up code for nullptr device check during cmdlist create
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-11-19 04:24:34 +01:00
Mateusz Hoppe
b384bda99a Exclude internally used cmdLists and cmdQs from debugging
Related-To: NEO-5241

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-17 12:17:34 +01:00
Bartosz Dunajski
bc1e772ec2 Set correct device bitfield for L0 command queue allocations
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-11-13 12:37:16 +01:00
Vinod Tipparaju
f553e1e514 Return "OUT_OF_MEMORY" when gfx alloc on device fails during cmdqueue create
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-11-10 06:26:02 +01:00
Vinod Tipparaju
083edd1a3e Thread safety violation fixes - Events & USM
Change-Id: I57de59f204d9fd4407be768d0b14bf579dae967d
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-09-03 08:54:34 +02:00
Mateusz Hoppe
55a6525b34 L0Debugger fixes
- add Sba buffer to residency container of cmdQ
- allocate debugSurface
- add printing SBA tracked addresses

Change-Id: I3eb4d918b99dfadd737d8f9f8174e94b1a620125
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-21 10:41:15 +02:00
Jaime Arteaga
398ad44404 Correct values in queue synchronize
Change-Id: I645d1ae50d6e17d2d330ba9d21ef1a8cf7b955b8
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-06 00:26:50 +02:00
Jaime Arteaga
902fc2f6c4 level-zero v1.0 (2/N)
Change-Id: I1419231a721fab210e166d26a264cae04d661dcd
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
Signed-off-by: macabral <matias.a.cabral@intel.com>
Signed-off-by: davidoli <david.olien@intel.com>
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
Signed-off-by: Latif, Raiyan <raiyan.latif@intel.com>
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-08-03 13:11:13 +02:00
Mateusz Hoppe
ef4fae3903 Enable TBX mode in level zero
RelatedTo: NEO-4644

Change-Id: I76913d6b7c7d978a5a90a7a574778c67283497c1
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-06 16:33:15 +02:00
Maciej Plewka
691a4ea823 Add blit copy implementation for L0
Change-Id: I327a4cf977e166cb648ee9f3a79374f7cefa7b1b
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-04-09 13:36:09 +02:00
Filip Hazubski
a7e4ad4eba Add unspecifiedDeviceIndex constant
Change-Id: I146e9c80ce0d18aae5e56fadf83f5e1603173fd7
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-01 20:37:05 +02:00
Mateusz Hoppe
6dc5810c7f Add more cmdlist tests
Related-To: NEO-4515

Change-Id: Idc0e0cdab97cb1a2437c212cbe8ae2bcf673125f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-03-27 18:26:47 +01:00
Jaime Arteaga
d96e462754 Reorganize Level Zero Core API files
Change-Id: I95750b90748dd65310fa72b030ea3ab2f72d3f24
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-03-25 11:21:43 +01:00