Commit Graph

136 Commits

Author SHA1 Message Date
Dunajski, Bartosz
7562842a58 refactor: remove LogicalStateHelper
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-13 10:29:53 +02:00
Compute-Runtime-Validation
b5e9c10f64 Revert "performance(ocl): program barrier pc in taskStream"
This reverts commit 839c2d6737.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-09-12 01:32:28 +02:00
Dominik Dabek
839c2d6737 performance(ocl): program barrier pc in taskStream
Program barrier immediately to task stream.
This will reduce the number of batch buffer starts.

Related-To: NEO-8147

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-09-11 13:23:26 +02:00
Dominik Dabek
622a3ed89c performance(ocl): flag to not dcFlush on no event
If waitForBarrier is not passed outEvent then do
dcFlush on the next synchronize call.

Related-To: NEO-8147

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-07-18 15:38:54 +02:00
Lukasz Jobczyk
e70f441f52 fix: Idle gpu before invalidate aux table
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-07-05 13:51:27 +02:00
Zbigniew Zdanowicz
e52e4f28f2 fix: correct csr state and command programming
- global stateless mode should save surface state base address
- correctly retrieve scratch offset for front end programming
- do not override general base address value and use indirect heap property

Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-03 15:55:55 +02:00
Zbigniew Zdanowicz
eb4e7fb2a6 performance: immediate flush add flushing mechanism to gpu
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-29 15:52:13 +02:00
Zbigniew Zdanowicz
b3ebcfe811 performance: immediate flush add ending commands to command list buffer
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-28 08:22:29 +02:00
Zbigniew Zdanowicz
bd15d067d5 performance: immediate flush add jump to batch buffer when preamble is present
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-23 09:28:15 +02:00
Zbigniew Zdanowicz
c37dbc4cf0 performance: add one time context init ray tracing to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-21 18:27:31 +02:00
Zbigniew Zdanowicz
7aff4e1bf4 performance: add one time context init system fence to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-20 07:25:09 +02:00
Zbigniew Zdanowicz
305f24ec9d performance: add state base address dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-14 18:00:04 +02:00
Zbigniew Zdanowicz
831363e51b performance: add state compute mode dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-06 13:29:39 +02:00
Zbigniew Zdanowicz
b66a2bf32c performance: add front end dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-05 13:04:57 +02:00
Zbigniew Zdanowicz
cf5100c134 performance: add pipeline select dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-02 10:31:13 +02:00
Kamil Kopryk
7f24a4ba25 refactor: Simplify SBA programming in flushTask
Related-To: NEO-7621
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-16 12:27:34 +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
Zbigniew Zdanowicz
6437c1a91e Flush state caches after command list is destroyed
When state base address tracking is enabled and command list use private heaps
then command list at destroy time must calls all compute CSRs that were using
that heap to invalidate state caches.
This allows new command list to reuse the same heap allocation for different
surface states, so before new use cached states are invalidated.

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-28 14:52:30 +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
Dunajski, Bartosz
e49e245bec Revert "Disable RelaxedOrdering if UpdateTagFromWait is disabled"
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-27 11:47:10 +02:00
Dunajski, Bartosz
151aecc8bd Disable RelaxedOrdering if UpdateTagFromWait is disabled
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-22 18:15:39 +01: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
Dunajski, Bartosz
477448c097 RelaxedOrdering dispatch for OCL 2/n
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-14 15:48:06 +01:00
Zbigniew Zdanowicz
42b8a536db Fix redundant state base address dispatch
This fix handles scenario when regular command list uses context first,
then immediate command list is used for the first time.

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-01 10:08:55 +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
Maciej Plewka
fa4830036a feature(ocl) use tags to synchronize multi root device events
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-01-23 10:28:01 +01:00
Warchulski, Jaroslaw
77501d86ba Cleanup includes 35
Cleaned up files:
shared/source/command_stream/command_stream_receiver.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-17 18:51:40 +01:00
Maciej Plewka
1421796541 Revert "feature(ocl) use tags to synchronize multi root device events"
This reverts commit 353a7510b2bd2d774d0b7ee82ee48eae7f5dc1d3.

Signed-off-by: Maciej Plewka maciej.plewka@intel.com
2023-01-17 11:29:58 +01:00
Maciej Plewka
16bc84e27d feature(ocl) use tags to synchronize multi root device events
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-01-13 08:09:32 +01:00
Kamil Kopryk
0dbf92d401 Refactor: reduce global productHelper getter usage
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-04 16:35:20 +01:00
Warchulski, Jaroslaw
a2fe929f0c Cleanup includes 18
Cleaned up files:
shared/source/command_stream/command_stream_receiver_hw.h
shared/source/compiler_interface/compiler_interface.h
shared/source/direct_submission/direct_submission_hw.h
shared/source/helpers/dirty_state_helpers.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-02 13:28:29 +01:00
Compute-Runtime-Validation
876de37b92 Revert "Feature(OCL) Use tag nodes for root device synchronization"
This reverts commit 547d1c37b3.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-12-24 19:14:33 +01:00
Maciej Plewka
547d1c37b3 Feature(OCL) Use tag nodes for root device synchronization
With this commit events created on multi root device contexts will
synchronize using signaled TagNodes instead of using taskCounts.

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>

Related-To: NEO-7105
2022-12-23 15:48:54 +01:00
Dunajski, Bartosz
85da0ee184 Enable flushTask path for BCS
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-12-01 20:10:21 +01:00
Dunajski, Bartosz
2c08f2ca8c RelaxedOrdering: Optimize return ptr programming
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-11-29 13:22:25 +01:00
Zbigniew Zdanowicz
c0c9ce548a Validate level zero events in TBX mode
Related-To: NEO-7545

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-11-28 16:45:02 +01:00
Maciej Plewka
4b42b066f8 Use dedicated using type for TaskCount
Related-To: NEO-7155

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-11-28 16:44:44 +01:00
Dunajski, Bartosz
e050d231b9 RelaxedOrdering: Add support for return pointer registers programming
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-11-23 09:58:33 +01:00
Mateusz Jablonski
dffe5fd604 Propagate flush error to initializeDeviceWithFirstSubmission method
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-10 19:33:38 +01:00
Warchulski, Jaroslaw
e4d10e5460 Cleanup includes 4
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-11-10 14:22:18 +01:00
Mateusz Jablonski
57cea7365e Return submission status from flushTagUpdate method
Related-To: NEO-7412
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-09 14:04:16 +01:00
Mateusz Jablonski
5b11a4a5fa Return submission status from flushHandler function
Related-To: NEO-7412
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-07 15:09:33 +01:00
Dunajski, Bartosz
67af920281 Unify programming of ending commands in direct submission path
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-11-07 10:56:36 +01:00
Mateusz Jablonski
1c3d5c3892 Prepare mechanism for returning GPU execution error on OCL API
translate task count value to OCL error

Related-To: NEO-7412
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-04 15:54:19 +01:00
Aravind Gopalakrishnan
f9fab3ff49 Update SBA in hybrid immediate and regular commandlist usages
Fix to check and update heap states.

Related-To: LOCI-3379
Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2022-10-14 11:42:06 +02:00
Dunajski, Bartosz
52b63be026 Remove isCleanLeftoverMemoryRequired() + refactor sampler support path
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-10-04 16:24:03 +02:00
Zbigniew Zdanowicz
3d92186362 Add heap sharing to immediate command lists
This change is intended to be used in immediate command lists that are
using flush task functionality.
With this change all immediate command list using the same csr will consume
shared allocations for dsh and ssh heaps. This will decrease number of SBA
commands dispatched when multiple command lists coexists and dispatch kernels.
With this change new SBA command should be dispatched only when current heap
allocation is exhausted.
Functionality is currently disabled and available under debug key.
Functionality will be enabled by default for all immediate command lists
with flush task functionality enabled.

Related-To: NEO-7142

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-10-03 18:50:10 +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
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