Commit Graph

138 Commits

Author SHA1 Message Date
Dunajski, Bartosz
717bc0c03f refactor: pass InOrderExecInfo to encode method
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-11 16:43:30 +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
Dunajski, Bartosz
9cc1a23ab6 fix: Regular Event waits for in-order counter if HW chaining is required
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-01 11:17:12 +01:00
Dunajski, Bartosz
41b55eaf77 refactor: improve in-order helper class handling
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-01 09:59:33 +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
Dunajski, Bartosz
c281b66587 feature: disable implicit counter based Events transition in IPC mode
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-23 12:12:18 +01:00
Dunajski, Bartosz
9a3fea9849 feature: disable IPC for CB Events
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-17 11:27:32 +01:00
Dunajski, Bartosz
a0beb96db8 feature: initial support for implicit convertion to CounterBased Events
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-08 14:59:12 +01:00
Dunajski, Bartosz
597b3637b3 fix: assign counter based event info in cpu copy path
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-08 12:55:25 +01:00
Dunajski, Bartosz
d699cd2a57 feature: experimental Counter Based Event support 2
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-06 14:33:10 +01:00
Compute-Runtime-Validation
da9adc6797 Revert "feature: experimental Counter Based Event support"
This reverts commit a8c79e0ba1.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-11-03 10:00:52 +01:00
Dunajski, Bartosz
a8c79e0ba1 feature: experimental Counter Based Event support
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-02 18:01:44 +01:00
Mateusz Jablonski
4dfa12c8eb fix: add mechanism to detect gpu timestamp overflows
unify naming CpuGpu to GpuCpu

Related-To: NEO-8394
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-19 16:31:06 +02:00
Dunajski, Bartosz
1054d166e2 feature: disallow reset/signal calls on in-order Events
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-04 10:35:41 +02:00
Dunajski, Bartosz
135b227c9b feature: handling in-order Event wait from different Regular CmdList
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-03 16:47:24 +02:00
Mateusz Jablonski
7531ced0e3 refactor: remove not needed error handling for make_unique
make_unique does not return empty object on failure

Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-03 10:56:15 +02:00
Dunajski, Bartosz
891cc2d09b feature: enable waiting for in-order events from regular CmdList
This is prework. Functional only on immediate CmdLists

Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-02 16:42:10 +02:00
Dunajski, Bartosz
c5f5f60f8d feature: cross CmdList and Event in-order data sharing [1/n]
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-29 11:14:18 +02:00
Dunajski, Bartosz
202a33ffac feature: track InOrder allocation ownership
CmdList can be released before Event. In this case, GfxAllocation
destruction must be deferred.

Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-25 15:03:25 +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
d3d5da1f72 feature: initial 64b in-order CmdList support
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-19 15:23:37 +02:00
Dunajski, Bartosz
52bab7844e fix: remove not needed check on event reset
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-08-30 09:19:22 +02:00
Dunajski, Bartosz
d582a48b1c feature: make in-order events optional
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-08-29 13:44:11 +02:00
Joshua Santosh Ranjan
b6e76b9118 fix: Move event reference time tracking into event class
This would avoid recalculating reference timestamps
when event is used with different command lists.

Related-To: LOCI-4563

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2023-07-25 08:44:47 +02:00
Dunajski, Bartosz
c18198ebd8 feature: change in-order allocation type to uint32_t
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-05 09:56:32 +02:00
Dunajski, Bartosz
5b9d45f3bc feature: handle in-order allocation overflow
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-04 15:58:11 +02:00
Dunajski, Bartosz
aea5f435db feature: unregister CSR client on Event host synchronize
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-26 12:02:14 +02:00
Dunajski, Bartosz
61fb19caab feature: bring back counter based in-order tracking
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-26 10:01:18 +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
814de81aca feature: replace in-order sync allocation with TimestampPacket
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-05-29 09:32:35 +02:00
Neil R Spruit
ded9d7bff2 feature: Get Peer Allocation with specified base Pointer
Related-To: LOCI-4176

- Given a Base Pointer passed into Get Peer Allocation, then the base
pointer is used in the map of the new allocation to the virtual memory.
- Enables users to use the same pointer for all devices in Peer To Peer.
- Currently unsupported on reserved memory due to mapped and exec
resiedency of Virtual addresses.

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2023-05-24 20:41:20 +02:00
Dunajski, Bartosz
23c08f4bca feature: Experimental support of immediate cmd list in-order execution [4/n]
Related-To: LOCI-4332

- Simplify CmdList-Event dependency
- Add waiting on in-order dependency
- Prepare Event for in-order synchronization
- Adjust downloading sync allocation in TBX mode

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-05-08 13:28:10 +02:00
Lukasz Jobczyk
48114e5423 fix: Release temporary allocations from bcs split
Related-To: NEO-7933

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-04-28 12:51:07 +02:00
Dunajski, Bartosz
75827b66c6 feature: Experimental support of immediate cmd list in-order execution [2/n]
- appendWaitOnEvents for previous dispatch
- update RelaxedOrdering logic
- update Event::setIsCompleted logic to reset already completed Event

Related-To: LOCI-4332

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-04-27 11:14:37 +02:00
Dunajski, Bartosz
14c3777409 feature: Experimental support of immediate cmd list in-order execution [1/n]
Related-To: LOCI-4332

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-04-26 13:15:59 +02:00
Lu, Wenbin
c66546df73 Disable kernel timestamp when not using implicit scaling
Related-To: LOCI-2826

Signed-off-by: Lu, Wenbin <wenbin.lu@intel.com>
2023-04-19 12:14:17 +02:00
Neil R Spruit
75fbaa0642 fix l0: Set isHostVisibleEventPoolAllocation for all host allocated EventPools
Related-To: LOCI-4147

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2023-03-15 16:56:13 +01:00
Zbigniew Zdanowicz
b4544f6f78 Fix dependency resolve in level zero black box tests
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-21 08:25:07 +01:00
Neil R Spruit
188f64adfd Fix IPC Event pools allocated for single device used on multidevice
Related-To: LOCI-3860

- Fixed IPC Event pools that are allocated for a single device such that
when opened thru IPC only that device handle can be used by the process
which opened the IPC event pool.

- IPC Event handle includes numDevices as a field to determine if the
root device index is the only index allowed for this event pool.

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2023-02-09 15:16:52 +01:00
Kamil Kopryk
524d945e8c refactor: rename l0 hw_helpers dir to gfx_core_helpers
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-02 11:15:56 +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
eb002acaa1 refactor: rename l0_gfx_core_helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-24 12:59:26 +01:00
Zbigniew Zdanowicz
7925e12392 Add improvements and tweaks to event pool runtime and tests
1. Reposition event pool code
- Implementation of event pool methods should be placed in event pool file
2. Change event pool and event classes
- move all class variables to base classes as protected
- add needed setters and getters for runtime
- add extended mocks and whiteboxes for unit tests
- tests using base or mock class when needed
3. Correct event creation in unit tests
- use HW specific timestamp type
- HW unit tests are using template timestamp type for event creation
- other tests are using helper to create event

Related-To: NEO-7636

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-01-20 16:47:08 +01:00
Warchulski, Jaroslaw
286c672ef4 Cleanup includes 37
Cleaned up files:
level_zero/core/source/event/event.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-20 12:34:39 +01:00
Zbigniew Zdanowicz
172ea34fc2 Refactor event pool class hierarchy
Related-To: NEO-7636

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-01-17 14:42:20 +01:00
Warchulski, Jaroslaw
c275008e51 Cleanup includes 32
Cleaned up files:
level_zero/core/source/cmdlist/cmdlist_hw.h
level_zero/core/source/cmdqueue/cmdqueue.h
level_zero/core/source/event/event.h
opencl/source/helpers/get_info_status_mapper.h
opencl/source/helpers/hardware_commands_helper.h
shared/source/helpers/per_thread_data.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-16 20:41:37 +01:00
Joshua Santosh Ranjan
3fdb9ae0dd Fix zero elapsed time for AppendMemoryCopy
1. If cpu based copy is used, it is possible that copy time is
less than device timestamp resolution. In this scenario, this patch
returns 1 instead of 0.

2. This patch also fixes usage of CPU time instead of CPU timestamp
for end timestamp calculation.

Related-To: LOCI-3754

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2023-01-13 04:40:50 +01:00
Zbigniew Zdanowicz
5a82b84219 refactor event interface for better use of functions
Related-To: NEO-7490

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-01-12 11:50:35 +01:00