Commit Graph

74 Commits

Author SHA1 Message Date
Cencelewska
03f910466e Remove default constructor of DispatchFlags
Resolves: NEO-3394

Change-Id: I6d5d8e389e0680e698423e4e36b4f0d20d173522
Signed-off-by: Cencelewska <katarzyna.cencelewska@intel.com>
2019-09-24 13:46:34 +02:00
Jobczyk, Lukasz
2e8e6bdb18 Move majority of utilities to the core dir
Related-To: NEO-3677

Change-Id: If2e876028b765ad3ecf5f75db8755623b82955b8
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-12 15:07:02 +02:00
Dunajski, Bartosz
6dae106f07 Improve TimestampPacket residency flow
- Dont call makeResident in enqueueHandler for blocked path
- Fill csrDeps for blit enqueue only in unblocked path
- Call makeResident on all dependencies during blocked command flush

Change-Id: I6658e4695483bee63eca205f85687ea5f951b099
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-09-04 16:33:17 +02:00
Maciej Dziuban
7e6ef7c208 Add helpers for MI_ATOMIC address
Setter in HardwareCommandsHelper
Getter in UnitTestHelper

Change-Id: I26610d0ccf0113b2b3d3c8ba2d1edd5bf8b41175
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-09-02 08:52:59 +02:00
Dunajski, Bartosz
89824aa848 Update TimestampPacketTests to use HwHelperHw for low priority engine
Change-Id: I4c7bb2c48daa245224ccdc084f152f98197b908c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-28 11:46:11 +02:00
Mrozek, Michal
e7a4635dd6 Add mechanism to register instruction cache flushes.
- With this mechanism csr with add pipe control with instruction cache flush
prior to enqueue, to make sure that this cache is flushed.

Change-Id: I664f212427686e9957027c7cf6c0dab17d2a3cac
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-28 07:56:41 +02:00
Krzysztof Gibala
62b0f0a220 Refactor addPipeControlWA, PipeControlWArequired
Related-To: NEO-3210
Change-Id: I0516154b323e29eeb697bf2253ca08ae1ce150d8
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2019-08-19 10:47:28 +02:00
Dunajski, Bartosz
e88371ceff Minor enqueueHandler cleanup
Change-Id: I07b2d0571b91b797b7a20ec29bb4cf1496b84f96
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-05 12:26:37 +02:00
Dunajski, Bartosz
38556cec29 Allow blocked command stream programming for commands without Kernel
Change-Id: I691a029bd5511c8f710ef1bff8cc5a9feca644f3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3433
2019-07-24 16:01:34 +02:00
Dunajski, Bartosz
95c2dcd8b0 Improve obtaining LinearStream during enqueue call
- Move logic to enqueueHandler to cover all scenarios
- Create BlockedCommandsData not only for Kernel enqueue
- KernelOperation cleanup

Change-Id: Ie4a673cbbc986c685996a38ab296444d38e7bbd5
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-22 18:52:14 +02:00
Dunajski, Bartosz
89d1878cd6 Rename engine member in CommandQueue
Change-Id: I01516616c164f19afbcd62d39a2a42d04ff768c9
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-15 17:53:01 +02:00
Mrozek, Michal
fe26b0b406 Move debug_manager_state_restore.h to core.
Change-Id: I3ef4a1aec40efa4bbc8346a5b517336c42c06519
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-15 17:21:38 +02:00
Dunajski, Bartosz
2c0c0ace88 Flush Marker command with TimestampPacket dependencies
Change-Id: I6475624996ccc254adb6641bef3cda431e57325a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-15 11:31:16 +02:00
Dunajski, Bartosz
42604b8645 Improve PIPE_CONTROL programming
Change-Id: Id21fe4d08fdfc19921051beb8f9a66737fefc2f3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-12 10:50:45 +02:00
Mrozek, Michal
373415ab6f Add isCompleted methods to timestamp packet.
Related-To: NEO-3429

Change-Id: If24c93f47d0351e350aae5c3200dc81fbd8495af
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-10 12:01:02 +02:00
Dunajski, Bartosz
0a8a77d47c Move enqueue blit logic to enqueueHandler
Change-Id: Ibbad22906387c15243708d37b272601f4734697d
Related-To: NEO-3020
2019-07-08 12:37:06 +02:00
Dunajski, Bartosz
8263d488c6 Submit Semaphore dependency for enqueue read/write without Kernel
Change-Id: I22e1743b4cbd6e8285527fdfe25424a6cb3ff462
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-25 14:21:57 +02:00
Dunajski, Bartosz
cf78aab248 Allow to push all dependency types to CsrDependencies helper
Change-Id: I0ef5dd0f77ade7f02a03c787618d55a4fcfba17c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-12 17:17:38 +02:00
Milczarek, Slawomir
583d4d4c6c Add clearAllDependencies parameter to obtainNewTimestampPacketNodes
The capability to clear Timestamp packet dependencies from command queue.

Related-To: NEO-2747

Change-Id: Id3812539a47b96e23d0b8b17b9b8f54878ee2ef2
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-05-24 12:29:49 +02:00
Filip Hazubski
8f17c70e9e Remove CommandQueueHw::requiresCacheFlushAfterWalkerBasedOnProperties
Change-Id: Ibdc6f7b883bfef471926a4351ed7437173c4a6a6
Related-To: NEO-2535
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-05-14 17:31:53 +02:00
Dunajski, Bartosz
bb80d327c7 Move HardwareInfo ownership to ExecutionEnvironment [1/n]
Change-Id: I5e5b4cc45947a8841282c7d431fb69d9c397a2d4
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-08 16:11:01 +02:00
Milczarek, Slawomir
6c8b14c918 OmitTimestampPacketDependencies to omit node dependency in timestamp packet
Makes subcapture feature work with timestamp packet enabled.

Related-To: NEO-2747

Change-Id: Ifa45f1c066129671a02dc708b537b285f5a05d7f
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-05-07 16:05:00 +02:00
Filip Hazubski
445ee08ace Fix typo
Change-Id: I8cd853e00da7a09d20e7a43e366f1e2c45a7230c
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-04-25 20:22:50 +02:00
Piotr Fusik
086ef7c461 Simplify code by introducing TimestampPacketStorage::Packet.
Related-To: NEO-2872

Change-Id: Ifce455f1a48f2db2bf16af2dd32208ee4542204d
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-18 16:14:04 +02:00
Piotr Fusik
745c20c78a Rename TimestampPacket to TimestampPacketStorage.
Related-To: NEO-2872

Change-Id: Id1f78491912c44890ae7ead2cac12ec8eb073628
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-16 15:34:28 +02:00
Maciej Plewka
da19e924f5 Add events support for cache flushes
Related-To: NEO-2536

Change-Id: Iea9e9b08df0225ce5a126ab950621576b3880bbe
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-04-15 15:44:25 +02:00
Piotr Fusik
543b3d39d0 Use CPU pointers for TimestampPacket where appropriate.
Related-To: NEO-2872

Change-Id: Ic91a1dd6252d2970e20bb32c3d867449041cbb8a
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-15 10:55:12 +02:00
Maciej Plewka
4eb48e3d06 Add function to flush caches
Related-To: NEO-2536

Change-Id: Ifbf7e7a42514dd66eb0914f9d13407287481e123
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-04-05 09:48:50 +02:00
Jobczyk, Lukasz
a025dc6985 Reverse logic of creating Memory Manager - part 6
-Remove a redundant condition from the MemoryManager constructor

Change-Id: I4b6c56f30a19e77a7a20f68c6d85516aaa52d102
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-04-01 10:27:29 +02:00
Maciej Plewka
9e52684f5b Change namespace from OCLRT to NEO
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00
Stefanowski, Adam
16aee8cc46 [2/n] Move Hardware Info to Execution Environment
- remove hwInfo from the csr functions where it was passed as a parameter,
now csr functions have access to hwInfo by Execution Environment

Change-Id: I756ae63d9728c9c963571147bab97f9e1c15797b
Signed-off-by: Adam Stefanowski <adam.stefanowski@intel.com>
2019-03-22 10:08:26 +01:00
Stefanowski, Adam
341fcfc091 [1/n] Move Hardware Info to Execution Environment
- remove gmm_environment_fixture
- remove hwInfo parameter from ExecutionEnvironment methods

Change-Id: Ieb0f9b5b89191fbbaf7676685c77644d42d69c26
Signed-off-by: Adam Stefanowski <adam.stefanowski@intel.com>
2019-03-12 08:39:26 +01:00
Maciej Plewka
e53a8e8709 Add postSyncAddress to flush after walker
Change-Id: I7fdfaf8e0acc365998cc74306ab715ea3d9c7d72
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-04 14:47:53 +01:00
Filip Hazubski
8b57d28116 clang-format: enable sorting includes
Include files are now grouped and sorted in following order:
1. Header file of the class the current file implements
2. Project files
3. Third party files
4. Standard library

Change-Id: If31af05652184169f7fee1d7ad08f1b2ed602cf0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-27 11:50:07 +01:00
Dunajski, Bartosz
4597759a65 Dont inherit TimestampPacket from Waitlist when doesnt exist
Change-Id: I12b184353243f99ec7bacdf2dcd9da1ba09e3516
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-27 09:15:48 +01:00
Venevtsev, Igor
5e8fb19e5d Remove OCL Events concept from EnqueueOperation and dispatchWalker
Change-Id: Iec55b0be673a2a40b9621212add224a33d4abc5d
2019-02-12 08:46:18 +01:00
Dunajski, Bartosz
dc181defba Use GpuAddress for TimestampPacket programming
Change-Id: I1303605c33e2e0267a1716e12a0bfcb341fcfbd7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-11 15:31:17 +01:00
Venevtsev, Igor
66e3f3c16c Remove OCL Events concept from command stream receiver
Change-Id: I4d5a97b41efe601c92c2f3f33e9e24bb7d4fa3d2
2019-02-08 15:02:40 +01:00
Kamil Diedrich
e1eab521e7 use release for cl-objects instead of delete
- fix for data race in events
- modification of the addition child event

Change-Id: I6ea3a413f13f13a91d37d20d8b9fad37d0ffafb9
2019-02-05 14:09:32 +01:00
Venevtsev, Igor
303014582a Extend semaphore synchronization for different command stream receivers.
Change-Id: Ic904b8c1e052adbb7b2ef82a6dec74ec69837f9f
2019-01-30 09:33:41 +01:00
Stefanowski, Adam
1001f76085 Add logic for Events in multi-thread scenario
- inc refCount when enqueue is blocked and dec after flushing

Change-Id: I9e8f8d226897124a7e51f2473939d53868bef7a2
2019-01-14 19:45:26 +01:00
Dunajski, Bartosz
b728526c4e Allow Device creating multiple CSRs [8/n]
Use OsContextId instead of DeviceIndex for residency

Change-Id: Ib2367b32b5b3e320252d8254f1042f1c3d497068
2018-12-04 15:36:59 +01:00
Piotr Fusik
87bb6afa56 Move stamps allocators from memory manager to CSR.
Change-Id: Ib399e462cdddad89fcc470df4c4f0f5e4591a6b2
2018-11-27 14:52:06 +01:00
Mrozek, Michal
e2c9a25d03 Add concept of chunks into timestamp packets.
Change-Id: Ic9a978224862e237a7268525f05b059756da06e7
2018-11-21 15:22:49 +01:00
Dunajski, Bartosz
d6870a896b Reduce tag pool size to 1 for AUBs
Change-Id: I3a3513250b10e899795e149bff2739193a725f84
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-20 11:42:32 +01:00
Piotr Fusik
e66920a8f8 Fix typos.
Change-Id: Ie7add32684f812e11281668d9b93910384086c62
2018-11-15 12:18:03 +01:00
Dunajski, Bartosz
1e0064fc2f Allow ULTs to work with enabled TimestampPacketWrite
Change-Id: Idd4622469220b859e8724d9179837c685377ce52
2018-11-07 08:50:04 +01:00
Mateusz Jablonski
ead2e2ea6d Move createAllocationForHostPtr method to command stream receiver
Remove not needed includes from command_queue.h

Change-Id: I45963bf005471bd7716d55471474299a15e27b62
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-30 17:49:08 +01:00
Mateusz Jablonski
56f67748fd Remove not needed definitions and includes from mock_device.h
Change-Id: I95585f05805ee85577dfa0b981b32f828853af8a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-22 16:30:14 +02:00
Dunajski, Bartosz
6d610983f1 Deferred Pipe Control programming and CSR flush on Barrier request
Change-Id: Iabae0f9159bb455518cedf7da068c7d3da72b840
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-10-17 09:31:34 +02:00