Commit Graph

75 Commits

Author SHA1 Message Date
Filip Hazubski 8fcff2241f Add ClDevice
Decouple cl_device_id from Device class.

Related-To: NEO-3938

Change-Id: I68543a753aea562f3b47ba0d23a059ff3cffa906
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-17 12:43:11 +01:00
Mateusz Hoppe 51f7ca1601 Move files to core
- runtime/gmm_helper files
- engine_control.h
- allocation_properties.h

Change-Id: I108888d639c8fdb298eda00fb1e7961b2ccb26cd
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-02 15:57:05 +01:00
Zbigniew Zdanowicz b31e25dbb6 Move PreemptionHelper class to core
Change-Id: I172c4beb8ea2576505d6192585d45cfa3d00da34
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-11-18 23:59:28 +01:00
Dunajski, Bartosz 8e945e7919 Improve TimestampPackets handling in blocked path
Change-Id: Idf381a8750cebec6196eb299661dda892e11144d
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-18 09:25:56 +01:00
Dunajski, Bartosz 46b5513028 Initial Blit aux translation support
Change-Id: I67fb71be57cff28a3736d5ffb9e1c39b2498feb8
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-16 11:42:10 +01:00
Filip Hazubski 5f021afd6d Move HwHelper to core directory
Change-Id: I2c78a8b737ee8e61b917b4918da37e77bbd9fe34
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-15 14:06:40 +01:00
Dunajski, Bartosz b6015b5293 Add TimestampPacketDependencies helper
Change-Id: I3945ac8e495baf442b4f892ba415f939e8d316da
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-13 16:04:48 +01:00
Dunajski, Bartosz 80407aec15 Program barrierTimestampPacketNodes only on first unblocked command
Change-Id: I8ebba9f8326e3da2365c001b0c350efb372a3774
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-12 15:37:51 +01:00
Dunajski, Bartosz af8ce96ab4 Add move logic to TimestampPacketContainer
Change-Id: Ib666fd57b4ca9123e324a82c3e648b0da49abffc
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-12 08:50:00 +01:00
Dunajski, Bartosz ad2b8a0bbe Allow dispatching multiple blit commands with single flush
Change-Id: I57ea32dfa8cfd89ec37fc2f1f82ee6f72598c18a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-08 14:35:44 +01:00
Dunajski, Bartosz 0a702ec679 Improve aux translation logic
- Debug flag to disable aux translation builtin dispatch
- Move MemObjsForAuxTranslation to MultiDispatchInfo

Change-Id: If6f3928440f856a0498e43df388868aa74aa60f2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-10-31 12:30:40 +01: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
Kamil Kopryk 2770f75afa Add support for stateless copy buffer to buffer
Change-Id: I7ad19890ea1725bcecf17aee16abe1f993f5b08c
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-3314
2019-10-15 15:26:18 +02:00
Dunajski, Bartosz d3e583f7f4 Synchronize blit enqueue after barrier call
Change-Id: I0349dc5b1581ecb142bdab881877450366bcdb86
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-10-04 14:56:30 +02:00
Katarzyna Cencelewska 260759268a Add logic to change queue slice count
Change-Id: I4f5ccb4ecb290e1a05e3a312b9fa2a5d9c5c17f7
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2019-09-26 10:21:12 +02:00
Maciej Dziuban a941c53dd8 Allow lack of scheduler_simulation file
Change-Id: I3a21af165e86983201dda4283543544bf2a09e9c
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-3545
2019-09-25 11:29:26 +02:00
Kamil Diedrich 115070767c Move graphics_allocation to core folder
Change-Id: I16b8dbb57c2a40126826a232332c18ba9f563220
2019-09-18 05:26:55 +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 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
Jobczyk, Lukasz 76fe09c2a9 Handle page faults while accessing unified memory
Related-To: NEO-3330

Change-Id: I7e21f894e9d1c82598954c49342d1f65af07498f
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-04 13:28:53 +02:00
Dunajski, Bartosz 47a0c43ad3 Copy EnqueueProperties to KernelOperation in blocked path
Change-Id: I5b9999901b5b75fc3165f9fa389857732aca2849
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-09-03 14:11:40 +02:00
Dunajski, Bartosz ac6b1e038d Remove not used code
Change-Id: Id79398b872325e096c53863cdfc9acb86ff047a8
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-09-03 14:11:10 +02:00
Dunajski, Bartosz 712313a3be Remove not used parameter
Change-Id: I89b8e3f3cd835b6bb3896fb3951941854e804786
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-09-02 14:44:32 +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
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
Dunajski, Bartosz b218c7fa16 Add helper for low priority engine type
Change-Id: I1d46e73f94d2827ba44de86a752d03830ff2b7e3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-27 14:13:53 +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 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 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 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 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 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 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 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
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
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
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
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
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
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
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
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
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
Mrozek, Michal 1ae92e995a Extract some code blocks to dedicated methods.
Change-Id: I9e47631367b95ce4ff5479c463a3cb5085b66315
2019-02-22 15:12:45 +01:00
Chodor, Jaroslaw 43856e88b5 Refactor around cache flush and command queue
Change-Id: I277e27cbc60fbbb015c0024f171697408879ec0b
2019-02-10 17:59:33 +01:00
Piotr Fusik e8a71132a4 Remove unnecessary casts.
Change-Id: I2d293d065c7efa006efe7d60a625cba0c6116c86
2018-12-18 13:42:14 +01:00