Commit Graph

374 Commits

Author SHA1 Message Date
Dunajski, Bartosz 77e22bd81b Refactor dispatching blit enqueue
Change-Id: Ibe499e4815a16d5884510c6804221d2b74dbffd4
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-09-02 07:56:50 +02:00
Jobczyk, Lukasz 10795c716f Move DebugSettingsReader to a core dir
Related-To: NEO-3677

Change-Id: I3374abde6717be20c064ec6d65c0751a783f5138
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-08-29 13:49:40 +02:00
Jobczyk, Lukasz 0528c6803c Enhance enqueue SVM tests
Change-Id: Ie3b99ee596a0795814c566deb9e3c37ea57c92c5
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-08-29 10:54:46 +02:00
Mateusz Jablonski 18982bd016 Move memory for slm window to memory manager
remove redundant methods from MockDevice

Related-To: NEO-3007

Change-Id: I9cc819b9c9118dbb667f5bf87d1bf15787f9b67f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-08-28 12:09:17 +02:00
Dunajski, Bartosz 6a5c89c9f7 Remove redundant test
Change-Id: Ie8aa1aeca169fcbe23edd1712143cfed437c95c5
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-28 11:26:08 +02:00
Jobczyk, Lukasz c7ad27d430 Add a HostToHost copy type in the Memcpy
Related-To: NEO-3570, NEO-3610

Change-Id: I84f8e2150b2d3760d968e94ae85638d91cb77a54
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-08-28 10:55:07 +02:00
Mrozek, Michal be17471f8a Wire in L1 MOCS index for stateless accesses to csr.
Change-Id: I1712a696e9c02ef042a08c80bfa87e80e82ada5f
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-27 15:48:12 +02:00
Jobczyk, Lukasz 4503e04083 Align a unified memory pointer during memcpy
Related-To: NEO-3570, NEO-3610

Change-Id: Id4d41da17a28ef512ba4c90bd71f419a24608d88
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-08-27 15:37:41 +02:00
Mateusz Jablonski 7749f28f70 Remove not needed methods from Device.
Change-Id: I179089a4b248ba1ebd6502e001fda18238c4767b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-08-27 09:07:10 +02:00
Mrozek, Michal cb4e5576cb Pass proper dispatch flags.
- add new policy to select L1 caching
- this is when kernel doesn't have any stateless writes

Change-Id: I3948e652797420976159bbfec2c2a154eb9e18ee
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-26 18:15:54 +02:00
Mrozek, Michal e851359e32 Start using real mocs index to call state base address programming.
- After this change we start using real MOCS index as an argument to sba
programming
- We also start tracking real MOCS index in Command Stream Receiver.

Change-Id: Id34cffd7e58cb7363df02ac76f82bf377f4bbd77
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-26 16:14:36 +02:00
Dunajski, Bartosz aeb84b3e20 y-tiling interface cleanup
Change-Id: If7e5ab7135eaa71d9215c87c2fc46188ffd42b02
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-26 15:00:26 +02:00
Mrozek, Michal c24bbac25f Refactor scratch offset programming.
- no need for virtual functions and helpers, this is just a constant that
is the same everywhere.

Change-Id: Id0ebfd2eed26e26f90f104ec456dcc997be70211
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-23 13:42:58 +02:00
Mrozek, Michal fdda152ebd Improve blocked path mocs testing.
Change-Id: I9812e8d28d1c3e8e5523a0a597f417a548f7b1d7
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-23 11:30:21 +02:00
Mrozek, Michal f362739521 Refactor L3 programming.
- Do not do it via member setting.
- Utilize DispatchFlags

Change-Id: I75d4c8ea6c1e10ca0edeeb0d1c3883a549c1cb1f
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-23 08:46:27 +02:00
Adam Cetnerowski 1eac288a24 ULT renaming: Command queue hw tests
Related-To: NEO-2236

Change-Id: I95cb79402822de667038e33f330425b133520389
Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2019-08-22 16:11:18 +02:00
Mrozek, Michal cb73ea7361 Add debug variable to override state less mocs index.
Change-Id: If1f37e56dd62927f96999d35530f210f577996b1
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-21 16:18:29 +02:00
Adam Cetnerowski 2f1f19566e Remove unused fixture
Change-Id: I028d76502aafa61c3b4350aec6c4efaca1030255
Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2019-08-21 15:55:29 +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 e3deda9b67 Always add dcFlush before aux translation kernels
Change-Id: I4a9b0ec21365cc19532be74c9dc44d68c8fa0bfe
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-13 09:08:36 +02:00
Filip Hazubski 552a1268eb Refactor blit buffer call
Resolves: NEO-3241

Change-Id: I726135ae55d1e0fcbacd80620e827ee5c7c0c8dc
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-08-09 16:43:40 +02:00
Jim Snow 4360aff03c Move runtime/helpers/aligned_memory.h to core/helpers
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
Change-Id: I15de094c51d4eb18bfff4d17fd34e817b5525fda
2019-08-06 23:56:24 +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 51888bec7e Whitelisted registers cleanup
Change-Id: Ifa704f4bd7c4f0bab3fc8565103af6da07a42ba7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-05 10:31:16 +02:00
Daria Hinz 06d14cdcae Checking builtinParams passed to Multidispatch
Change-Id: Idb6c30dc5bb46403cea12acbf5174c6d9ddfbd3e
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2019-07-30 08:21:13 +02:00
Dunajski, Bartosz d9e02697bf Improve MockCsr reset pattern in unit tests
Change-Id: I0e9e13a44455de72d3a7298befa330a18b584788
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-25 01:31:41 +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
Jobczyk, Lukasz 30bbe600eb Do not mark svm map operations as read only by default
Related-To: NEO-3520

Change-Id: Ia8074cca76b5b2907bb970e86cb862985453187d
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-07-23 17:15:08 +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 4e98d34471 Update dispatch flags for enqueueCommandWithoutKernel
Change-Id: I51c8afee84b40db12901f048c03fd92fa3808c0c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-22 14:50:14 +02:00
Dunajski, Bartosz cc617c0f78 Do implicit flush for blit enqueues
Change-Id: I872f39a0ea3410b09693b2018c0b86a9a127e5a2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-19 09:48:52 +02:00
Raiyan Latif ca74489172 Move string.h to core helpers
Change-Id: Ibaaab077ef2867b5e0db3bd215c261de9294063f
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2019-07-19 07:21:00 +02:00
Dunajski, Bartosz 23e9e9e02e Register Blit CSR to CommandQueue
Change-Id: Ib22ef934492b702990ca549bab576993b0684e98
Related-To: NEO-3020
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-17 08:04:03 +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 de381f01e8 Move waitForTaskCountAndCleanAllocationList to waitUntilComplete
Change-Id: Ia36b43bb2c8e330c1d90d639c06efcad42783e23
2019-07-15 14:48:36 +02:00
Mrozek, Michal 9d723a10aa Move enumerateLeak to core.
- remove not used parameter.
- remove the usage of default parameters.
- move some constants to memory management as well.

Change-Id: Iedf374568fa3594ffad6b53534e4483485863324
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-15 13:53:03 +02:00
Dunajski, Bartosz ddb0d82e83 Introduce RegisteredMethodDispatcher.
- Inject dispatch methods per DispatchInfo
- Each DispatchInfo in MultiDispatchInfo can have different behaviour
- Implement AuxTranslation programming with new approach

Change-Id: Ie28de0c72a77b8e91509a5b9b8740d72fedf4ad6
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-15 11:59:53 +02:00
Mateusz Jablonski a72109d209 Correct residency of private scratch allocation
Related-To: NEO-3190

Change-Id: Ia18e2d2ce5e30901f55e7a050a3e453fb4969ada
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-07-15 11:31:43 +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
Pawel Wilma bb5f6bf4b1 Built-in kernels refactor
Related-To: NEO-3220

Change-Id: I6625539554b56999a6a810e7be8e89435d1aef11
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-07-12 13:17:59 +02:00
Mrozek, Michal 0440b86d05 Rename SVM Memory Manager to Unified Memory Manager.
Change-Id: I1d7637a5aaca3ef5190c4f6303c81060f95744a9
2019-07-12 11:22:09 +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 a38e9da034 Optimize marker call in blocked scenarios.
- Do not emit batch buffer
- obtain completion stamp directly from csr

Change-Id: I7ff58f2f019ee8158665f6fb93682ce5aae17bd6
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-10 11:01:49 +02:00
Mrozek, Michal 6ffcd51847 Fix race in events scenarios.
- It could happen that 2 threads try to update the same event within tree
- First thread starts to submit command, it releases cmdToSubmit
- Second thread doesn't see the command and follows
- Second thread thinks that it submitted the command so it follows to
subsequent steps which are child events notification
- We end up with corrupted enqueue sequence as child may submit prior to
parent.
- With this change each submit step is synchronized basing on task count
- When second thread enters submit command without task count being set
it wait for first thread to properly set it.

Change-Id: Ic2ddaea17f9af8cab6781320edae2c268dd0b189
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-09 14:45:07 +02:00
Mrozek, Michal baa11187c3 Simplify isStatusCompletedByTermination.
- remove default parameter.
- remove branch.

Change-Id: Ia829adfc684057516a2fc204e853ad3948853e22
2019-07-09 09:48:16 +02:00
Mrozek, Michal 7f7f1b8ac9 Optimize waiting scheme in user events scenarios.
- do not wait on map/unmap if zero copy resource.
- do not wait in marker commands at all.

Change-Id: I74cdd8320d13602bf662eed412ed2fcad1504989
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-08 17:40:36 +02:00
Mrozek, Michal 64403ef630 User event code path improvements.
- is queue blocked to release virtual event when it is submitted
- do not wait on completion after ndr submit.

Change-Id: I63c54e6940f6241b32f0dbdd5880f849c46fd12e
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-08 16:23:17 +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
Pawel Wilma fac8c94c1e Revert "Built-in kernels refactor"
This reverts commit 40b00c7e8a.

Change-Id: I8c13be5134c051272db1fe1b7b15764cf8ad6953
2019-07-04 16:33:01 +02:00