Commit Graph

137 Commits

Author SHA1 Message Date
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
Filip Hazubski
6d439f88bb Explicitly set dcFlushEnable value
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-21 12:21:11 +01:00
Kamil Diedrich
6940fbf387 Program private 2 scratch in L0
Related-To: NEO-5427
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-12-20 23:25:09 +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
Filip Hazubski
cf4ce308d9 Rename function
Rename multiDeviceCapable to implicitScalingCapable
Rename isMultiDeviceCapable to isImplicitScalingCapable

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-09 11:14:08 +01:00
Zbigniew Zdanowicz
357f650b8b Unify code for check is implicit scaling enabled
Related-To: NEO-6262

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-24 12:41:00 +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
7ea0a11c0a Unify programming of partition registers
Related-To: NEO-6262


Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-18 16:52:51 +01:00
Spruit, Neil R
6d8502847e Set Uncached MOCS for List only given stateless uncached args
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-11-18 03:35:48 +01:00
Spruit, Neil R
9c6433e55e Fix to L3 Caching given unaligned memory & hostPtrCopy only for src host ptrs
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2021-11-16 00:44:46 +01:00
Szymon Morek
dbeb263868 Fix CFE programming when usm transfer required
Resolves: NEO-6288

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-11-05 11:49:48 +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
Lukasz Jobczyk
c7d5a96dfd Flush small task adjustments
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-28 11:39:55 +02:00
Compute-Runtime-Validation
8c6fed2149 Revert "Flush small task adjustments"
This reverts commit 32ae9555f1.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-10-28 09:19:32 +02:00
Lukasz Jobczyk
32ae9555f1 Flush small task adjustments
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-27 16:43:06 +02:00
Krzysztof Gibala
ca0138da2e Disable PC WA on specific engine type
Related-To: NEO-6056

Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-10-18 14:04:27 +02: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
Dominik Dabek
59a1adc41b Poll csr completion at CmdQueue
Related-To: NEO-6090

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-10-07 14:25:28 +02:00
Bartosz Dunajski
4ba4c32766 Remove SBA->IOH programming on XE_HP_SDV
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-29 12:35:43 +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
ddf76ef0b2 Add reset partition count and all partitions in Fence object
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-13 10:24:10 +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
Rafal Maziejuk
824102dc6c Move isDisableOverdispatchAvailable function from HwHelper to HwInfoConfig
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-4541
2021-09-07 14:12:48 +02:00
Filip Hazubski
23cea464fe Correct setting singleSliceDispatchCcsMode value
Don't set the value when appending kernels.

Related-To: NEO-5995

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-09-07 10:40:36 +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
0606ef4095 Disable patching VfeState by default
By default VfeState will be programmed once per command lists execute.
Patching may be enabled with AllowPatchingVfeStateInCommandLists variable.

Related-To: NEO-4940

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-09-01 17:18:14 +02:00
Filip Hazubski
c03620468b Update VFE state programming
Treat regular kernels scheduled as cooperative ones as cooperative kernels.
Add debug variable AllowMixingRegularAndCooperativeKernels.

Related-To: NEO-4940

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-31 19:49:25 +02:00
Filip Hazubski
741fa13507 Store StreamProperties in CommandStreamReceiver
Move StreamProperties from CommandQueueHw.

Related-To: NEO-5995

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-30 15:52:47 +02:00
Filip Hazubski
63f8c9d98b Add new EngineUsage
Simplify verifying EngineUsage in tryGetEngine function.
Remove unused getGpgpuEnginesCount function.

Related-To: NEO-4940

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-23 17:41:13 +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
Bartosz Dunajski
d8a98acafd Set SingleSliceDispatchCcsMode for EngineInstanced OsContext
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-18 13:02:16 +02:00
Jaime Arteaga
5c236a62fd Changes to SW tags
Add SW tags to synchronization points
Add ID sequence numbers
Add new allocation type

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-08-18 01:51:37 +02:00
Szymon Morek
aa5e1780a2 Rename plus in filenames to and_later
Related-To: NEO-5920

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-08-17 11:26:27 +02:00
Vinod Tipparaju
a2012e04dc Add pageFault migration support for immediate cmdlist submission via flushTask.
Move logic for makeResident & pageFault migration to command place for re-use.

Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-08-10 06:21:04 +02:00
Filip Hazubski
caf1ab628a Do not allow mixing cooperative and non-cooperative kernels in an execute
When executing command lists, ensure that all lists contain either cooperative
or non-cooperative kernels. When appending kernels to a command list, do not
allow mixing cooperative and non-cooperative kernels.

Related-To: NEO-4940, NEO-5757

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-03 20:24:33 +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
a869921c2a Remove RMW from gfx allocations
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-07-15 11:28:03 +02:00
Sebastian Luzynski
c389db6f1c Add space calculation for SBA instruction
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2021-07-13 12:19:30 +02:00