Commit Graph

126 Commits

Author SHA1 Message Date
Igor Venevtsev
63fd26f6d6 Always specify rootDeviceIndex for graphics memory allocations
Related-To: NEO-2941

Change-Id: Ia2362fd6b4e72ede02919152475f40b3edbc3658
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-11-15 15:14:41 +01:00
Dunajski, Bartosz
afb96b0b57 Change temporary allocations cleanup order
Change-Id: I7c6d52d985da14fb6c7a0bd15e4384c1ddfae622
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-05 15:36:33 +01:00
Dunajski, Bartosz
2be5786b9d Allow for blit enqueue on read/write buffer operations
Change-Id: I69c88e63ef3e8b32bbdf72a69c93f84d3ab45fe3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-10-25 10:05:00 +02:00
Dunajski, Bartosz
a046de5689 Improve BCS waiting logic to satisfy AUB/TBX mode
Change-Id: I52b44959b8bdc1cc66f136a4785233b95870fd0b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-10-22 13:36:43 +02:00
Mateusz Jablonski
37bd67e791 Correct getting engines from device with sub devices
use first sub device to take engine for low priority or blit operations

Related-To: NEO-3691

Change-Id: I29737df06cc764a10a22a41017ab827cde7960b8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-16 14:32:02 +02:00
Gibala
2f9bfc7748 Remove OCL object from MemoryProperties 10/n
Add cl_mem_flags, cl_mem_flags_intel and wire it in mem_obj.
Refactor:
- validateMemoryPropertiesForImage
- validateExtraMemoryProperties

Related-To: NEO-3132
Change-Id: I90fac5fc00e24fc67346109a1fe6f269ef51e1e0
Signed-off-by: Gibala <krzysztof.gibala@intel.com>
2019-10-10 10:19:47 +02:00
Mrozek, Michal
2ca541a343 Revert "Allow for blit enqueue on read/write buffer operations"
This reverts commit dd75cdcf04.

Change-Id: I0e653d25b190036cc0fdbc6765dd79a5646df3d8
2019-10-07 10:42:02 +02:00
Dunajski, Bartosz
dd75cdcf04 Allow for blit enqueue on read/write buffer operations
Change-Id: Id8f6feb09503a901bfbbd9bd755eb6f237fc1f23
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-09-27 07:52:39 +02:00
Dunajski, Bartosz
0337b58ee4 Remove dcFlush parameter from finish call
Change-Id: Ifc808822399a100745a9d81bb5f6e45903a895fa
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-09-13 12:28:10 +02:00
Dunajski, Bartosz
ee1939ca18 Revert "Allow for blit enqueue on read/write buffer operations"
This reverts commit 70de319f33.

Change-Id: I38aa340ddbf906a3c121aa768a6c8300f48db8df
2019-09-13 09:20:51 +02:00
Dunajski, Bartosz
70de319f33 Allow for blit enqueue on read/write buffer operations
Change-Id: Iacdd2b75c671209d961fdf1754ff348af45ae56c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-09-09 12:51:06 +02:00
Dunajski, Bartosz
e7e23cd0b4 Remove queueBlocked restriction from blitEnqueueAllowed
Change-Id: If7fcd15cbbb4e749d16b9d028dac33a8a7b20bde
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-09-02 12:53:21 +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
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
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
9cd56612a5 Revert "Enable Blitter for read/write Buffer operations."
This reverts commit db190c62a0.

Change-Id: I2f232175b369d0680f8a23ddc2d434b1df0eec2c
2019-07-19 14:27:29 +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
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
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
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
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
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
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
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
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
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
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
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
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
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 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
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