Commit Graph

463 Commits

Author SHA1 Message Date
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
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
Maciej Plewka 5ab8748fc5 Move registers offsets to seperate header
Change-Id: I48487943c1cd0354fb38801a1504c503a5bc4d80
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-08-09 14:48:32 +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
Zbigniew Zdanowicz d36e7972f3 Add cpuid check for CLFLUSH
Change-Id: Ie76f314f7dac0cbc6bf987eab95ad0508f994fb7
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-08-05 20:47:52 +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
Maciej Dziuban 10fd98e0c5 Add include
Change-Id: Ibbe3b29c0f4c341dd6e2f2251a7981815a16f44b
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-07-31 15:38:33 +02:00
Dunajski, Bartosz b98f712551 Disable Blitter for read/write Buffer operations
Change-Id: I42d05083b53c85f59dc8d35f83d4d674b9d393a8
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-30 08:54:10 +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 197e1e8e9b Enable Blitter for read/write Buffer operations.
Change-Id: Ida59de8221ffd95686d52428401c68b2befc493b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-24 08:09:45 +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 4dd3292922 TaskInformation cleanup
Change-Id: If723f477406ca13e40c77a9471de9b8e35beff1d
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3433
2019-07-23 12:04:20 +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 9cd56612a5 Revert "Enable Blitter for read/write Buffer operations."
This reverts commit db190c62a0.

Change-Id: I2f232175b369d0680f8a23ddc2d434b1df0eec2c
2019-07-19 14:27:29 +02:00
Zbigniew Zdanowicz f01c1d2d49 Add residency mechanism to OS interface
Change-Id: I323ca856d3c901bdc4d5961cdefa42685b53d4d9
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-07-19 13:35:11 +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
Dunajski, Bartosz 4dd6c96618 Move dispatching Kernel commands to separate method
Change-Id: I8e9b20a2a81c594c3661fd10644e7b55abaa9ba9
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-19 08:25:36 +02:00
Dunajski, Bartosz 689f674194 Remove not used code
Change-Id: I0a0e58ad4a521a4a337180aca66e65ed328692cc
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-19 07:55:28 +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 db190c62a0 Enable Blitter for read/write Buffer operations.
Change-Id: I75d18beef1039f329d01d9627e8ed2db906ef1ce
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-18 17:04:53 +02:00
Dunajski, Bartosz dda6e29254 Dont wait for BCS before enqueue completion
Change-Id: I99fa7834e927049c2faff5dfbf44b3c2a77a1af1
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-17 13:15:06 +02:00
Dunajski, Bartosz 277786d433 Refactor obtaining IndirectHeaps
Change-Id: I9ad13f35daa18b0ff7ae760749cf4cdc7416b347
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-17 11:13:49 +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
Dunajski, Bartosz de381f01e8 Move waitForTaskCountAndCleanAllocationList to waitUntilComplete
Change-Id: Ia36b43bb2c8e330c1d90d639c06efcad42783e23
2019-07-15 14:48:36 +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
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
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
Dunajski, Bartosz 3b8d39be62 Revert "Improve PipeControlHelper"
This reverts commit 878928caee.
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>

Change-Id: I91c4cffc90d613a6a6e6bcee6e9cf39b8a707cb3
2019-07-11 11:56:02 +02:00
Dunajski, Bartosz 878928caee Improve PipeControlHelper
Change-Id: I8d553ec82026399225e452529044a0470afe7963
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-10 19:37:08 +02:00
Dunajski, Bartosz b6792ef049 Move profiling programming out of MultiDispatchInfo processing loop
Change-Id: I55c271569d3cb6c09d1cef02793afb2115110fe2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-10 14:55:31 +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 b349c4bb13 Fix race in isQueueBlocked.
- Sequence is as follows :
Enqueue returning event , blocked on user event.
clFinish.

There are 2 additional threads:
- one is calling updateExecutionStatus in a loop on returned
event
- one is calling setUserEventStatus on parent user event

In such case virtual event may be submitted but task count will
not be assigned.

Change-Id: Ia097bd59b276cc9213945c476cf289398b8f5934
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-09 11:42:38 +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 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 cf63b25aff Make TimestampPacket allocations resident
Change-Id: Ic15251bf73a6f2b3c888b2272f8df9c721ee8f58
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-08 14:03:29 +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
Piotr Maciejewski d1d794c658 Metrics Library Performance Counters implementation.
Signed-off-by: Piotr Maciejewski <piotr.maciejewski@intel.com>
Change-Id: I0f00dca1892f4857baaebc75ba2208a4f33db1bf
2019-07-04 15:56:47 +02:00
Mrozek, Michal 25083960ac Add parameter to setGpgpuWalkerThreadData.
Change-Id: I931f27ad3a21d3d151b19ac9226e245134295b98
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-03 13:14:51 +02:00
Mrozek, Michal d6b438da20 Clean interfaces.
Change-Id: Ifbc7caf77d10bd34c1c776739e9f11d3f9b12af8
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-02 15:31:21 +02:00
Dunajski, Bartosz 27654c9282 Buffer-to-Buffer blit operations support
Change-Id: I76c9fae83fa2a31bd6108999c7f77f4a47c47f1b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-01 23:46:07 +02:00
Dunajski, Bartosz 3441b5288d Update DispatchFlags in enqueueCommandWithoutKernel path
Change-Id: Ic1a8de5ee3e6d387d93b7238ab74bf1e3a8e0990
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-01 14:41:35 +02:00
Dunajski, Bartosz 41cca6d790 Use GraphicsAllocation for blit operation instead of Buffer object
Change-Id: I7e59a25db97082a6396d441a8fa603df27d6424d
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-07-01 11:23:27 +02:00
Mateusz Jablonski 27f3f8ea8f Pass private scratch size to scratch space controller
Related-To: NEO-3190

Change-Id: I6f1e71481679492516d898226de6a1e721896e81
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-28 14:32:06 +02:00
Dunajski, Bartosz 56e77ca452 Add BlitProperties to simplify properties passing
Change-Id: I4abf99d420487a237e5b465b9d4d121121f45a84
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-27 16:31:40 +02:00
Dunajski, Bartosz da09c70e8c Remove not used parameter
Change-Id: Ieef5a0da66a91075b682e917def3578cf48b0bbe
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-27 13:58:18 +02:00
Dunajski, Bartosz 8d4791143b Change postSyncAddress offset for cache flush
Change-Id: I6cc557888e46e4a1c1ff495ddd2a3f9b6e264a21
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-27 11:42:52 +02:00
Mrozek, Michal 1bc5f7b142 Ensure that events without commands have proper flush stamps.
Change-Id: I937efef7f87fa7df9e9b1a903269e3637eca73ad
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-26 09:08:58 +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 be7087ec66 Obtain completionStamp from enqueueCommandWithoutKernel
Change-Id: I045d4acc37a3c1d7376eaf87b1ed163c968f1266
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-21 14:10:26 +02:00
Filip Hazubski a9b8c07293 Update enqueueKernel
Return CL_INVALID_GLOBAL_WORK_SIZE error if global_work_size contains 0 for
OpenCL older than 2.1
Do not throw exception if global_work_size contains 0

Related-To: NEO-3111

Change-Id: If7b7884465117d9c0615ace2bb682b3b1c7d8bdb
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-06-19 15:28:39 +02:00
Dunajski, Bartosz 4b592b2520 Don't take BCS path when Queue is blocked
Change-Id: Ie6faa276ce1173ce075693bc81d1e91d1ace27fc
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-18 15:31:53 +02:00
Dunajski, Bartosz a2398e193b Pass Blocking enqueue flag to Blit CSR
Change-Id: I2dcdd27eef338d3aca60a273bce15e5382673a93
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-17 16:33:16 +02:00
Dunajski, Bartosz 3e88907201 Enqueue Read/Write operations with blitter
- Program dependencies from Event and IOQ
- Obtain new TimestampPacket
- Update output TimestampPacket if needed

Change-Id: I4ad020f5c5b05ceca8b096fafe1257523e2bc343
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-17 12:01:37 +02:00
Dunajski, Bartosz 04e893d31f Move providePerformanceHint method from private to protected scope
Change-Id: I48cd44748d5e24aa53a72db89269fc26c4626190
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-14 00:13:47 +02:00
Dunajski, Bartosz bea67a8bb3 Move queue dependency clearing query to helper method
Change-Id: I0859d7f855020979b27ba5ee31c59cc8a7bd3f7a
Related-To: NEO-3020
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-13 15:04:18 +02:00
Koska, Andrzej 9be74b5f3e Replace imageRowPitch with imageSlicePitch
Related-To: NEO-2665
Replace imageRowPitch with imageSlicePitch
  for read/write CL_MEM_OBJECT_IMAGE1D_ARRAY
Change-Id: I0d5931629571f538f242e112c502e2f798ffd896
Signed-off-by: Koska, Andrzej <andrzej.koska@intel.com>
2019-06-12 21:06:32 +02:00
Dunajski, Bartosz 70f92cf03c Rename KernelCommandsHelper to HardwareCommandsHelper
Change-Id: I0b92a2d74bc96658274e4a02fec0f322e87681b2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-12 13:45:12 +02:00
Dunajski, Bartosz 576005f7bb Initial support for enqueue blit operation
Change-Id: Iab37beeeb574243c00a5579568e15bcbd1307c43
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-06-09 13:56:03 +02:00
Koska, Andrzej d11e61b5ee Revert "Replace imageRowPitch with imageSlicePitch"
This reverts commit 4a49e7396a
Related-To: NEO-3265
Change-Id: Ia521f850e10bea174db282bd2de68ff626aea943
Signed-off-by: Koska, Andrzej <andrzej.koska@intel.com>
2019-06-06 08:15:26 +02:00
Milczarek, Slawomir 8e210941f8 AUB subcapture to work with multi CSRs
Related-To: NEO-2747

Change-Id: I2149cafb59bd1a6374da140e3f7e76a4cb3bb417
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-06-05 10:52:05 +02:00
Koska, Andrzej 4a49e7396a Replace imageRowPitch with imageSlicePitch
Related-To: NEO-2665
Replace imageRowPitch with imageSlicePitch
  for read/write CL_MEM_OBJECT_IMAGE1D_ARRAY
Signed-off-by: Koska, Andrzej <andrzej.koska@intel.com>
Change-Id: I67bd0567dcee05027f3d25ef65796e332b9a4773
2019-06-04 22:54:07 +02:00
Dunajski, Bartosz f6bf2c5d0b Simplify read/write enqueue operations on CPU
Change-Id: I7f59b04d484be2699e325d10e16298016231faf2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-03 09:56:26 +02:00
Dunajski, Bartosz ab8e3e472f Remove redundant cpuCopyAllowed flag
Change-Id: I8609af0c64d408b87a54d9ac082de7dd0cc83a79
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-30 13:15:23 +02:00
Jaime Arteaga b98b51b0d9 Move ptr.h to core folder
Change-Id: Icf0db7c767b2b1ea44fccc02b135f0f6c1f78c8f
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2019-05-29 00:11:34 -07: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
Maciej Dziuban 608ec933da Extract GpgpuWalker related functions to bdw_plus files
Change-Id: I3b2081af8e350d4072da5e1482a4bfc50e06fb6d
Related-To: NEO-3016
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-05-24 11:48:50 +02:00
Koska, Andrzej fa3d4f39f4 Enabling clEnqueueSVMMemcpy between SVM and host pointer
Related-To: NEO-3011
Change-Id: I89aad599d7238ea2d319a4b1c72dffea2dba952b
Signed-off-by: Koska, Andrzej <andrzej.koska@intel.com>
2019-05-20 09:10:56 +02:00
Zdunowski, Piotr bfea41c85b Revert change to image alignment performance hint.
This reverts commit 1262b67e17.

Change-Id: I0935c43e065e4543ad70a6178ceb3773d6c8a65b
Related-To: NEO-2366
Signed-off-by: Zdunowski, Piotr <piotr.zdunowski@intel.com>
2019-05-15 14:58:17 +02:00
Mateusz Jablonski b8fb5e683b Move basic_math.h and vec.h to core directory
Change-Id: I143b7af450ff48d4958b4bc7137b393a2dc0eb64
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-05-14 21:32:55 +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
Zdunowski, Piotr 1262b67e17 Image alignment performance hint should report the same values it checks.
Related-To: NEO-2366

Change-Id: I0bbbd4bbe2940ef89fdc9cadcf1d3894ca4fb5ad
Signed-off-by: Zdunowski, Piotr <piotr.zdunowski@intel.com>
2019-05-14 16:29:24 +02:00
Maciej Dziuban 3da9aebf7d Extract functions to command_queue_hw_base.inl
Change-Id: I172c5d29cc81c4f1a95f6475ec261975ee21fab6
Related-To: NEO-3016
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-05-10 16:33:12 +02:00
Milczarek, Slawomir cc6a94b5b6 Fixed TBX with AUB dump mode without AubStream
Related-To: NEO-3150

Change-Id: I9ee7fc3c44f3021c61db7c27c01522cbe7d7445d
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-05-10 14:23:17 +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
Milczarek, Slawomir 10d87404b6 AUB with kernel names in case of kernel split
Related-To: NEO-2747

Change-Id: I49d3e4716db4634da6744fe91ecfb0763f67722a
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-05-07 10:14:32 +02:00
Piotr Fusik 92584d8c64 Minor cleanup.
Change-Id: I0f345c4fbf49f6464dce7bafd8b8d59347ff2d77
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-26 14:34:58 +02:00
Filip Hazubski fae1d882f8 Add SvmAllocationProperties
Change-Id: Ie96aeab5597a1b3f2db8611a8a04597516730ce8
Related-To: NEO-2535
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-04-23 10:30:04 +02:00
Milczarek, Slawomir 1bf263f061 AUBDumpAllocsOnEnqueueReadOnly to not activate in path with map image
Related-To: NEO-2717

Change-Id: Ida017557a58533323a214c59febfd8794ef4cf17
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-04-19 13:09:56 +02:00
Piotr Fusik 603eee76e5 Use GPU pointers for HwPerfCounter.
Related-To: NEO-2872

Change-Id: Ia30f2ee0d96a3da05b8e5ecf55e9b7fb5a34ace7
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-18 16:28:48 +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
Zbigniew Zdanowicz 0c6823afd6 Add map allocation for images
Related-To: NEO-3097

Change-Id: I5bfd89fd597a8d55597ff7a2aa05b2abd278d5bd
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-04-18 14:46:06 +02:00
Milczarek, Slawomir c6247873f5 Add comments with kernel names to AUB files
Related-To: NEO-2783

Change-Id: Ib00e969b106301d712dc4c14af8208456bcabdb3
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-04-17 14:56:24 +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
Milczarek, Slawomir 1b7014e10c AUBDumpAllocsOnEnqueueReadOnly to not activate in path with map buffer
Related-To: NEO-2717

Change-Id: I7999928e23f8d9cb4a88978ec44e4615eebb97b6
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-04-15 17:27:53 +02:00
Mrozek, Michal 50270d74f7 Force blocking when device enqueue requires aux translation.
Change-Id: Ia1af6d8d3f18fc0a40994ffe10d50573b884345c
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-04-15 16:13:35 +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 dd4b3a9f14 Simplify HwTimeStamps operations.
Related-To: NEO-2872

Change-Id: Id8e49082b88d7233b9d3ceb9074ce093c100ec14
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-15 10:51:09 +02:00
Zbigniew Zdanowicz 971cbd55f3 Add new SVM types
Related-To: NEO-2917

Change-Id: Ica127129799c1e617a326a110348c2f70160b15c
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-04-11 15:27:38 +02:00
Mrozek, Michal 9ae29ecfc8 Move unrecoverable.
Change-Id: Ia8460ac7d9acdd9e4180ab4b87d2adb18699a8a8
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-04-10 11:44:03 +02:00
Zbigniew Zdanowicz e201725dd5 Add dedicated map allocation
Related-To: NEO-2917

Change-Id: Ieeca40f5faf29433a5c464d2c3ca3b8910695a9b
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-04-09 16:16:31 +02:00
Mateusz Jablonski 91a64c8518 Fix locking resource logic for enqueue read/write buffer call
Change-Id: I261ed4904d617a2f4600ea2a5ec7fd34f534c191
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-09 13:16:59 +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
Mrozek, Michal 387fdc5682 Make sure that timestamp is properly connected to mapBuffer event.
Related-To: NEO-2317

Change-Id: I607211e9e8bb05e0c4103a10087c10f6959f2008
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-04-04 11:36:06 +02:00
Mateusz Jablonski f76c0e84fb Don't copy compressed buffer on CPU
Change-Id: I9c36ee8f23284286bb846fd9a0fd196733d0f8f9
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-03 13:15:41 +02:00
Mrozek, Michal 4cb060fc46 Remove not needed code.
Change-Id: Idcbc53f22cc3a3f1c3acb4b2a620372d6102b12b
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-04-03 12:17:53 +02:00
Mateusz Jablonski f3d17008ee TransferProperties: lock resource only when transfer on CPU is requested
Change-Id: Ic93b4fd438e75f5d54cbae9bec332c4b18c6b1ee
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-01 14:02:49 +02:00
Maciej Dziuban 68311588e6 Delete CommandQueue argument from dispatchScheduler
Change-Id: Icbda4d6887d7f0001e3081aef1fa69edc1169782
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-04-01 11:13:37 +02:00
Maciej Dziuban 377aebce06 Move PIPE_CONTROL related functions to PipeControlHelper
Change-Id: Ie8220b06d2aa35a9fd0083b7db6925b577564d36
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-04-01 09:20:28 +02:00
Piotr Fusik 8cf7cea1e9 Simplify bit operations.
Change-Id: If1401f32df5ebcb3abf614832152abf029a9c5e6
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-27 17:11:29 +01:00
Piotr Fusik d4a0c4852b Move EngineType to aub_stream.
Change-Id: Ieaa75aaf4aca4487833754eb38ff709adcbf0f11
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-27 10:06:29 +01: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
Filip Hazubski cdd46679c8 Add getIntelQueueInfo helper function
Change-Id: I5daed24c36db8f5da143db8665b4353582dbc94b
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-03-26 11:31:35 +01:00
Dunajski, Bartosz a8db48dbca Refactor Device::getEngine to get Engine by its type
Change-Id: I640b32c0d226686e6648d39dd62404f5d507c98f
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-03-25 10:49:37 +01:00
Maciej Dziuban 33c07c875f Do not insert PipeControl WA or DC Flush when not needed
Change-Id: I71030273708f243324a566232528bce00a0361df
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-03-22 12:37:27 +01:00
Liwei Wang ca4b47f7f4 Add support of GPU preemption (v1.00).
https://github.com/intel/compute-runtime/pull/119

Change-Id: I3134d62b66751c8621b80002373a7a9b198e044e
2019-03-22 08:49:11 +01:00
Koska, Andrzej fcdfcb3fc4 Pass enqueued values to enqueueHandler
Change-Id: I991818657c7cafaf8911ce711a87a6c7b4531517
Signed-off-by: Koska, Andrzej <andrzej.koska@intel.com>
2019-03-13 11:23:37 +01:00
Piotr Fusik ec72787b98 Remove MemoryManager::allocateGraphicsMemoryForHostPtr.
Change-Id: I629f2299a183fc135135dbaff89216b966554a95
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-12 15:51:32 +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
Maciej Dziuban fb78677d8d Add function for ensuring command buffer has allocation with given size
CommandStreamReceiver::ensureCommandBufferAllocation

Change-Id: Icb48c9beff4f087addda75e97b90d86e8481e7ff
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-03-04 09:39:00 +01:00
Zbigniew Zdanowicz 10a25e405a Remove debug flag ForceMultiEngineQueue
Change-Id: Iabf38999a03be3422c25c12978808731df77a899
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-02-28 16:06:36 +01:00
Mateusz Jablonski 6fb28dd828 Refactor GraphicsAllocation class
move most of members to protected section
merge related members into structs

Change-Id: Ief2e092aa5e61ca6f13308f9d9b1937ea6c913b4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-02-28 14:09:11 +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
Jablonski, Mateusz 798137e4bb Add function to create devices bitfield based on allocation properties
Change-Id: Ic70443b1fb6106186efcff318690e434dc1db625
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-26 12:07:09 +01:00
Maciej Dziuban 0cf71414e2 Pass command stream to dispatch scheduler
instead of taking it from CommandQueue

Change-Id: I8e43c3b7ed5cb46f79edf3290a84fc6ad41f3b57
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-02-25 14:35:19 +01:00
Hoppe, Mateusz 432b8f20a7 Allow cpu copy with debug keys only when ready waitlist events
Change-Id: If9293787c76b8248a84e25d03cbf9a9b5aaf7cca
2019-02-22 17:39:57 +01:00
Mrozek, Michal 1ae92e995a Extract some code blocks to dedicated methods.
Change-Id: I9e47631367b95ce4ff5479c463a3cb5085b66315
2019-02-22 15:12:45 +01:00
Mrozek, Michal e4bffaa194 Route all enqueue without kernel calls directly to enqueueHandler.
Change-Id: I4c4ab013ff9adbe0e32e2661b3091f319d36c9c3
2019-02-22 14:19:22 +01:00
Maciej Dziuban 90e970cee6 Create GraphicsAllocation during dispatch when queue is blocked
Change-Id: I8a6f9e14ff57e7ed2920260af291317805f4df13
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-02-21 15:28:17 +01:00
Mrozek, Michal 4139e88982 Allocate command buffers with proper allocation type.
Change-Id: I912dd41cf68fa16ab481bb003c4f5ae63f1f04c4
2019-02-20 12:52:45 +01:00
Jobczyk, Lukasz 2bcecf3e62 Align command buffers to 64KB
Change-Id: Id1fbd7c6f1aee48c4b69ec305d5332cb0aa86507
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-02-18 09:58:45 +01:00
Zdanowicz, Zbigniew 51d34da7ec Add multiEngineQueue field to DispatchFlags and modify interfaces
Change-Id: Iaa4754a22e9b88201aed7df01c7d6e5fd06c84a9
2019-02-14 17:12:15 +01:00
Zdanowicz, Zbigniew 8e1e874a76 Refactor headers and reorder include order
Change-Id: I6b341e2b37e569af7d741bfd7a63804c0b25a4c9
2019-02-14 13:39:01 +01:00
Mrozek, Michal 4ef67479e4 Add const keyword.
Change-Id: I52a7e2f81c12ef29fd9c57740a21b9e68608181f
2019-02-12 15:02:24 +01:00
Mrozek, Michal 0e7fd2ffed Add multiEngine field to command queue with debug variable to override it.
Change-Id: I3c1e424a7ad545e166e178d1726595e6d9502ca7
2019-02-12 12:22:24 +01:00
Kamil Diedrich a7b46ccdbd Add RAII for cl_objects
- add removeVirtualEvent to cmdQueue fixture
- add const keyword in event functions

Change-Id: I11354eb8fceb15ae2c58bddd327863a15aab6393
2019-02-12 11:19:35 +01:00
Venevtsev, Igor 5e8fb19e5d Remove OCL Events concept from EnqueueOperation and dispatchWalker
Change-Id: Iec55b0be673a2a40b9621212add224a33d4abc5d
2019-02-12 08:46:18 +01:00
Kamil Diedrich 89410a6733 Add DCFlush before resolving
Change-Id: Id5f82edc4631aa16baa55b26b8bde69f4a30572c
2019-02-11 16:33:34 +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
Chodor, Jaroslaw 43856e88b5 Refactor around cache flush and command queue
Change-Id: I277e27cbc60fbbb015c0024f171697408879ec0b
2019-02-10 17:59:33 +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
Mateusz Jablonski ce4a75e121 Require same allocation type when obtaining reusable allocation
Change-Id: I829301b83a6214bcfb4fc9f2692f21ae9a002456
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-02-01 16:10:28 +01:00
Koska, Andrzej 395d053f02 Limiting the value of LWS to the value of GWS
Change-Id: I24e89125e586ed77d396ba9e40dd039f1ab213fe
2019-02-01 12:49:54 +01:00
Filip Hazubski d30cc221df Update disabling caching for a resource
Change-Id: I00eac0add01f75a1b82d04cf42652c15b776a457
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-01 10:50:21 +01:00
Chodor, Jaroslaw 7d04159f76 Refactor around cache flush
Change-Id: Iff32af0111375f4ffc804c82e6d753d57fe94e80
2019-01-31 22:19:06 +01:00
Venevtsev, Igor 303014582a Extend semaphore synchronization for different command stream receivers.
Change-Id: Ic904b8c1e052adbb7b2ef82a6dec74ec69837f9f
2019-01-30 09:33:41 +01:00
Milczarek, Slawomir b11e0825c9 AUB capture with support for allocation dumps
Change-Id: I90a2b75043c33af92e4557be37cde4b9699582c6
2019-01-28 21:20:08 +01:00
Mateusz Jablonski 128bf4552f Remove debug flag ForceResourceLockOnTransferCalls
Unlock locked resoures in freeGraphicsMemory method

Change-Id: I2baae7b7f9d8260f19a4b083849c5bf0d1a764f3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-25 14:03:29 +01:00
Zdanowicz, Zbigniew 158f200476 Add HW commands const definitions
Change-Id: If2e9d7f7f707b7b8c7bd8dbd3853ab3b6dad0c9a
2019-01-18 12:13:25 +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
Mrozek, Michal 6c902faf0b Cleanup around Walker programming.
- remove redundant methods.
- remove redundant parameters.
- Simplify the logic of programWalker

Change-Id: I6112bb19fd0008530f5e5510238bf42e669379b7
2019-01-14 10:12:38 +01:00
Mrozek, Michal 15bfdc101f Refactor programWalker.
- Pass variables computed in upper layers via args.
- declare variables prior to functions.
- Change some names for better verbosity.

Change-Id: I603b9ada1f62a08de5ac0fce177ccd840f2ce98c
2019-01-14 09:02:14 +01:00
Pawel Wilma 14e8fdd8f8 Fix for incorrect timestamp offset calculation in event profiling info
Change-Id: I634c29daf4734b24e4075542dc6550c531977f0a
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-01-11 16:39:05 +01:00
Hoppe, Mateusz 64ff9d30b7 Fixes for misaligned hostPtr enqueueReadWrite
- use getGpuAddress for BuiltinOpParams
- fix read/writeImage

Change-Id: I2e6e9a1d91871fa9f22851f31eb5a7b337b5aecc
2019-01-11 09:14:47 +01:00
Mrozek, Michal ef73bb8c11 Move Walker specific code to dedicated method.
- move cache flushes after the Walker.

Change-Id: I58c5e76bad22ac42da2c466ef008ef5bf96df077
2019-01-10 16:36:56 +01:00
Hoppe, Mateusz 3381dc258b Fix for ReadWriteBufferRect with misaligned hostPtr
Change-Id: I026f3512e6501b7e3a4cd5b9b6e9010a0b3b8a72
2019-01-09 14:57:25 +01:00