Commit Graph

72 Commits

Author SHA1 Message Date
Dunajski, Bartosz
e2387a450b fix: check for new bcs submission before releasing queue resources
Related-To: NEO-9005

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-29 12:05:05 +02:00
Dominik Dabek
eebf2bbd26 performance(ocl): timestamp packet count per gfx
Add support for different timestamp packet counts per gfx family.
Change all packet counts to 1 except for xe-hpc.

Related-To: NEO-8154

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-09-25 20:34:58 +02:00
Dunajski, Bartosz
8f6183e758 fix: check queue post post completion resources when releasing Event
Related-To: NEO-8316

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-04 08:23:56 +02:00
Dunajski, Bartosz
f1fc273cfc fix: check for new submission before releasing TSP nodes in wait call.
Related-To: NEO-8318

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-08-31 13:19:19 +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
Dunajski, Bartosz
815b37bf3a performance: allow waiting for OOQ timestamps in clEnqueueWaitForEvents
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-14 11:33:10 +02:00
Dunajski, Bartosz
40c7b2842f fix: check engines completion before releasing deferred TSP nodes
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>

Related-To: NEO-8146
2023-07-11 16:11:51 +02:00
Dunajski, Bartosz
d96cf5846a fix: dont allocate TSP for OOQ without Event
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-06 15:12:22 +02:00
Dominik Dabek
d7981e153e fix(ocl): tweak resolve deps with pipecontrols
Keep resolving with semaphores if multiple (>2) queues are submitting to
the same CSR. In such case, semaphores allow concurrent execution while
pipecontrols would serialize it.

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-03-27 17:22:03 +02:00
Dominik Dabek
a634c6a7b1 fix:pass bool to get CS size instead of reevaluate
Pass resolveDependenciesByPipecontrol bool value to get command stream
methods instead of reevaluating the condition.

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-03-24 15:24:10 +01:00
Dunajski, Bartosz
97a35debde RelaxedOrdering dispatch for OCL 1/n
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-13 17:37:12 +01:00
Dominik Dabek
22d7c2ea28 feat(ocl): move dependencies programming
Move out of csr dependencies programming to queue stream.
Correct method fillCsrDependenciesForTimestampPacketContainer.

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-02-20 13:42:56 +01:00
Compute-Runtime-Validation
0e1ba33e07 Revert "fix(ocl): fix resolve dependencies by pipecontrol"
This reverts commit d13dd79312.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-02-09 15:47:13 +01:00
Dominik Dabek
d13dd79312 fix(ocl): fix resolve dependencies by pipecontrol
Keep semaphore programming for events on bcs

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-02-08 16:58:18 +01:00
Kamil Kopryk
2484c7ceb2 refactor: rename hw_helper files to gfx_core_helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-01 19:37:51 +01:00
Kamil Kopryk
026d50c7b9 refactor: don't use global ProductHelper getter 13/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-27 13:52:36 +01:00
Kamil Kopryk
b101f9f2f5 refactor: don't use global ProductHelper getter 12/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-27 12:29:18 +01:00
Kamil Kopryk
a3212f8362 refactor: don't use global ProductHelper getter 8/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-24 10:43:59 +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
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
14d524fe26 Refactor: don't use global ProductHelper getter in ocl files 1/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-27 12:56:51 +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
Kamil Kopryk
232b886056 Rename HwInfoConfig to ProductHelper
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-14 14:39:52 +01:00
Dominik Dabek
7d7ecd50b6 DG2, Enable resolving dependecies by pipecontrol
Enable resolving dependencies by pipecontrol on same CSR, IOQ on DG2 by
default.

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-12-07 12:49:52 +01:00
Dominik Dabek
4adba15dbb Update for resolving dependencies by pipecontrol
Flag ResolveDependenciesViaPipeControls now removes only same csr
dependencies. Still enables pipe controls.

Works through hwInfoConfig method isResolveDependenciesByPipeControlsSupported

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-12-05 15:48:49 +01:00
Dominik Dabek
408a2e3e92 Add asserts to timestamp ults
Add asserts to avoid OOB array accesses when no semaphores are used

Related-To: NEO-7321

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-11-29 12:32:50 +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
Warchulski, Jaroslaw
d795182eae Move files from shared/test/unit_test to /common (preamble, utilities)
unit_test/preamble/preamble_fixture.h -> common/fixtures
unit_test/source_level_debugger -> common/
unit_test/utilities/base_object_utils.h -> common/utilities
unit_test/utilities/destructor_counted.h -> common/utilities
unit_test/utilities/logger_tests.h -> common/utilities

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-17 11:24:58 +02:00
Dunajski, Bartosz
a3903c385e Remove HW types from synchronization interface
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-07-25 13:59:26 +02:00
Zbigniew Zdanowicz
461a2eb8c7 Refactor interface to hardware interface
Related-To: NEO-6959

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-05 11:54:33 +02:00
Daniel Chabrowski
1083a0d0c4 Move more timestamp packet tests to shared
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-06-28 15:04:54 +02:00
Daniel Chabrowski
8627340ee0 Partially move timestamp packet tests to shared
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-06-21 23:43:50 +02:00
Bartosz Dunajski
e722afbefb Track waitlist TimestampPackets to avoid too early return to the pool
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-05-12 13:54:04 +02:00
Dominik Dabek
6e8cabdce5 Split wait for timestamps to queue and event
On PVC both enabled.
On DG2 only for events.

Related-To: NEO-6948

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-05-06 15:34:47 +02:00
Lukasz Jobczyk
7eb70775ea Flush caches for cross CSR dependencies
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-04-27 15:03:27 +02:00
Lukasz Jobczyk
6fdcb83020 Add missing tbx calls to timestamp wait logic
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-04-19 14:24:06 +02:00
Lukasz Jobczyk
7e4262839a Add timestamp wait support for BCS
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-04-15 13:26:23 +02:00
Zbigniew Zdanowicz
a54c947866 test: create dedicated mock object for timestamp packet
Related-To: NEO-6871

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-04-13 14:56:36 +02:00
Lukasz Jobczyk
1aeb097a63 Download timestamp allocation before checking completion
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-28 15:02:04 +02:00
Lukasz Jobczyk
a74ae8f6af Implement timestamp wait for events
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-17 17:57:30 +01:00
Michal Mrozek
721c59d3d5 Move to StackVec for timestamp packet container.
Do not use std::vector in hot path.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-03-03 10:34:06 +01:00
Michal Mrozek
bfacd14b61 Remove not needed code.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-03-02 13:10:15 +01:00
Lukasz Jobczyk
418a8854b2 Skip timestamp wait when enqueue non kernel operation
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-30 10:02:07 +01:00
Lukasz Jobczyk
b59b0b6b36 Download timestamps before checking completion
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-28 08:14:27 +01:00
Zbigniew Zdanowicz
7680331b4a Move shared object mocks to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-20 18:48:37 +01:00
Lukasz Jobczyk
1f0c58d0bf Refactor timestamp wait mechanism
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-16 13:22:19 +01:00
Michal Mrozek
ebb16c8b74 Add new debug key to control dependency resolution.
Currently only supported scenario is one in order queue.
Instead of resolving dependencies via semaphores, do this with pipe controls.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2021-12-09 17:26:38 +01:00
Zbigniew Zdanowicz
3e1023fa1a Unify memory layout for all multi tile post sync operations
Related-To: NEO-6262

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-02 18:00:40 +01:00