Commit Graph

209 Commits

Author SHA1 Message Date
Dominik Dabek
296d2bb148 performance: adjust ulls timeout on power saving
Use l0 power saving setting to also adjust ulls timeout.

Related-To: NEO-10800

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-06-17 16:51:55 +02:00
Bartosz Dunajski
da9c009b88 feature: assign unique interrupt to queue
Related-To: NEO-8179

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-07 10:06:31 +02:00
Mrozek, Michal
38d7e02c28 refactor: remove not needed code
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2024-05-29 13:24:02 +02:00
Szymon Morek
2c2ff5e369 fix: update task count when object is always resident
Related-To: NEO-11537

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-05-27 15:18:00 +02:00
Mateusz Hoppe
d35d8727e5 fix: use primaryCsr allocations when csr has primaryCsr set
- global fence allocation
- global stateless heap allocation
- preemption allocation
- debug surface allocation

all above are shared from primary csr

Related-To: NEO-7824


Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-05-07 02:41:24 +02:00
Lukasz Jobczyk
c1004b77bf performance: Limit tlb flush in state cache flush to wddm
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-05-06 12:45:26 +02:00
Mateusz Jablonski
cb2b572e94 feature: add support for null aub mode
In this mode AUB csr will be created, however, no aub file will be created

Related-To: NEO-11097
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-04-09 16:59:42 +02:00
Dominik Dabek
2b964254d6 performance: debug key for adjust ULLS on battery
ULLS controller timeout settings will be adjusted based on ac line
status and lowest queue throttle from submissions.

Lowest queue throttle is reset when controller stops ULLS.

Related-To: NEO-10800

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-03-22 14:24:00 +01:00
Mrozek, Michal
10313b7b84 refactor: remove not needed code
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2024-03-07 18:50:16 +01:00
Mateusz Jablonski
a697a3f718 refactor: create new members for storing spill and private memory in scratch
rename private scratch space into scratch space slot 1 as it can be generic

Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-23 12:42:25 +01:00
Compute-Runtime-Validation
f9f9035b95 Revert "refactor: create new members for storing spill and private memory in ...
This reverts commit 87eb5f554a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-01-23 09:13:00 +01:00
Mateusz Jablonski
87eb5f554a refactor: create new members for storing spill and private memory in scratch
rename private scratch space into scratch space slot 1 as it can be generic

Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-22 19:48:48 +01:00
Mateusz Jablonski
a673347378 fix: don't allocate preemption surface for BCS engines
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-19 07:59:24 +01:00
Mateusz Jablonski
dd1b9d6abc refactor: correct naming of enum class constants 8/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 08:18:18 +01:00
Mateusz Jablonski
739d181026 refactor: correct naming of enum class constants 6/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 14:48:52 +01:00
Mateusz Jablonski
b182917d9d refactor: correct naming of allocation types
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 16:23:37 +01:00
Mateusz Jablonski
e57d372608 refactor: correct naming of enum class constants
EngineGroupType
BlitDirection
PostBlitMode
WaitStatus

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-01 11:53:51 +01:00
Mateusz Jablonski
c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Kamil Kopryk
ce7298d512 feature: Add heapless mode programming in ocl
Related-To: NEO-7621
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-11-24 12:53:39 +01:00
Dominik Dabek
6562828095 performance: prealloc internal heap on mtl
Preallocate 1 internal heap allocation per csr on mtl

Related-To: NEO-8152

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-11-17 13:36:21 +01:00
Dominik Dabek
7a6fc209dd performance: prealloc cmdbuffer on mtl
Preallocate 2 command buffers allocations per command queue initialized
on MTL.

Related-To: NEO-8152

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-11-08 17:21:13 +01:00
Michal Mrozek
80e3632c41 performance: do not free deferred allocations when not needed
Level Zero doesn't use deferred allocations so no point in paying the
price to check for them in cleanAllocationList.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2023-10-27 18:02:43 +02:00
Dominik Dabek
39cf653959 performance(ocl): cmd buffer prealloc per cmdqueue
Add mechanism to preallocate cmd buffer allocations in command stream
receiver reusable allocations list per command queue initialized.

This should limit additional allocations during hot loop.

Needs to be enabled in subsequent commits by setting product helper
method.

Related-To: NEO-8152

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-10-27 16:56:29 +02:00
Dunajski, Bartosz
80d0c74605 fix: track registered CSR clients 2
Related-To: NEO-8884

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-25 09:35:55 +02:00
Compute-Runtime-Validation
ade538ce54 Revert "fix: track registered CSR clients"
This reverts commit 53f635e392.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-09-24 10:07:26 +02:00
Dunajski, Bartosz
53f635e392 fix: track registered CSR clients
In L0 its not possible to track objects relations. For example CmdList
may be removed before Event.
In such case, Event needs to safely skip unregister call, without
accessing CmdList/CmdQueue object.

Related-To: NEO-8884

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-22 09:42:55 +02:00
Dunajski, Bartosz
7562842a58 refactor: remove LogicalStateHelper
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-13 10:29:53 +02:00
Maciej Plewka
3b3e17e738 performance: Use vector for private allocs to reuse
Related-To: HSD-18033105655, HSD-18033153203

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-09-04 13:34:38 +02:00
Maciej Plewka
5807d512b3 fix: Reuse private allocations during cmdList dispatch
Related-To: NEO-8201

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-08-31 14:40:55 +02:00
Dunajski, Bartosz
2c50fd9486 fix: waiting for completion in TBX mode
- use testTaskCountReady method to check TaskCount value
- download all allocations when TaskCount is ready

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-25 11:54:09 +02:00
Zbigniew Zdanowicz
21823af419 performance: add skeleton method to cmdlist immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-30 10:46:20 +02:00
Mateusz Jablonski
4f72835b7d fix: create dedicated class for root device indices to store unique values
remove method to removing duplicates from StackVec as the method
implicitly sorted the vector

Related-To: GSD-4692
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-06-12 22:24:06 +02:00
Dunajski, Bartosz
5fe9d70066 feature: new multitile post sync layout for immediate write [1/n]
No functional changes in this commit. This is prework.

Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-07 13:11:10 +02:00
Kamil Kopryk
e0d3db3d91 fix: improve release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-15 14:30:15 +02:00
Fabian Zwolinski
cbce863dc2 refactor: Rename member variables to camelCase 3/n
Additionally enable clang-tidy check for member variables

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-28 16:01:14 +02:00
Zbigniew Zdanowicz
7731264fe3 [fix] update ray tracing commands programing
- 3D btd command should be programed only once per context
- Add conditional pipe control command prior dispatching 3D btd command
- share 3D btd state between immediate and regular command lists
- add pipe control after ray tracing kernel to invalidate state cache

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-03 11:21:24 +02:00
Zhenjie Pan
820a189c52 fix: only increase fence/task count when submit task success
Related-To: NEO-7812

Signed-off-by: Pan Zhenjie <zhenjie.pan@intel.com>
2023-03-28 14:15:36 +02:00
Zbigniew Zdanowicz
bc4e540c33 [fix] unify heaps size programing
- share same code between csr and cmd container to get default heap size
- share handling of debug flag to change heap size
- share platform level surface heap size between csr and command list
- refactor heap size files
- put heap size constant and function into namespace
- command list surface heap size increased to 2MB for xehp+ to match csr
- command list increased surface heap size only for sba tracking
- sba tracking heap consumption increased due to different reset policy

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-17 08:34:06 +01:00
Zhenjie Pan
00b675643e fix: missed error handler of SubmissionStatus::FAILED
Related-To: NEO-7802

Signed-off-by: Pan Zhenjie <zhenjie.pan@intel.com>
2023-03-13 16:08:27 +01:00
Zbigniew Zdanowicz
f3324964f6 [perf] initialize stream properties only once without further check
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-10 17:50:49 +01:00
Zbigniew Zdanowicz
24c8f089ed [perf] add state compute mode dirty flag to allow selective properties update
- full properties update is time intesive task and must be done only once
- selective update can be done after initial update
- dirty flag will allow to distinguish initial update is done

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-10 17:27:08 +01:00
Kamil Kopryk
fa8579602f refactor: rename product helper files n/n
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-10 13:24:38 +01:00
Zbigniew Zdanowicz
fd7a3c4096 Add creation of global stateless heap for the context
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-07 15:00:34 +01:00
Zbigniew Zdanowicz
34064811d2 Refactor state base address programing 4/n
- This change gets level one cache policy from cached values instead
of calling virtual methods

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-27 17:30:36 +01:00
Zbigniew Zdanowicz
3cb064fe95 Refactor state base address programing 3/n
This is small optimization to replace virtual call and retrieved struct with
cached value.

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-23 13:08:32 +01:00
Zbigniew Zdanowicz
bf2072c3ea Add cross regular and intermediate command lists base address state transitions
- updates coming from regular list are updated in csr last sent variables
- all per context and per kernel transitions kept in single place
- state updates from intermediate to regular are set in csr properties
- global atomics support duplicates removed

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-17 16:49:47 +01:00
Aravind Gopalakrishnan
d75c4d3ec7 fix: Skip adding device to list if context creation fails
Propogate error codes from ioctl failure properly up the layers
so that we skip exposing bad root devices.

Related-To: NEO-7709

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2023-02-16 11:40:54 +01:00
Zbigniew Zdanowicz
6b1c5b7eb8 Update state properties only affected by kernel data
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-14 14:56:47 +01:00
Dominik Dabek
0885379060 Fix typo
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-02-07 17:59:37 +01:00
Lukasz Jobczyk
9f574b6fba Introduce barrier tracking mechanism
Related-To: NEO-7696

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-06 14:29:23 +01:00