Commit Graph

65 Commits

Author SHA1 Message Date
Pawel Wilma
472a75912d Return error code from submit() to application.
Related-To: NEO-3741

Change-Id: I0e0ff6606eb6a8a77673949955c8e799689017b6
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-11-26 12:42:47 +01:00
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
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
Jobczyk, Lukasz
e784ba39fb [2/N] Make the execution environment adapter agnostic
-add rootDeviceId to the command stream receiver

Related-To: NEO-3857

Change-Id: I6c7f334ebe3d19cf0c58a4db65d013b7a8b7f982
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-10-29 17:15:01 +01:00
Dunajski, Bartosz
eb5811a797 Fix typo
Change-Id: Ibdc35346a9ef05a4ec643d19bd64b790e608eb1a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-10-28 13:19:38 +01: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
8410bd6e18 Remove device index from command stream receiver
Change-Id: Ia84b0cb8e03260ec940ee0b175b12693e528b8aa
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-04 13:27:33 +02:00
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
Mateusz Jablonski
7cb6d665a5 Use device index from os context when allocating heaps and command buffers
Related-To: NEO-3691

Change-Id: I64015d606bba289d250920899ad620171e8303b7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-23 17:26:39 +02:00
Kamil Diedrich
115070767c Move graphics_allocation to core folder
Change-Id: I16b8dbb57c2a40126826a232332c18ba9f563220
2019-09-18 05:26:55 +02:00
Mateusz Jablonski
5c120893ed Move method isMultiOsContextCapable to CommandStreamReceiverHw
Related-To: NEO-3691

Change-Id: I3169ee8d5a29b8f562b70403b2fa9ebba7601a48
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-16 14:46:11 +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
Pawel Wilma
d35c20f430 Collect patch info for scratch/global/constant/private
Related-To: NEO-3342

Change-Id: I0b594219cedf5d13d1eb70514816e8048938772e
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-08-14 13:52:28 +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
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
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
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
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
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
c8c2e64ec6 Add blocking flag for bliter operations
Change-Id: I61f672780c2108961eaed40b5d5be257f3c34566
Related-To: NEO-3020
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-04 21:39:43 +02:00
Filip Hazubski
befbffc967 Support offsets in blitter
Related-To: NEO-3020

Change-Id: I7ce13f0cf890c47fd40e92b5bb20c4f4ce291653
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-06-04 16:16:37 +02:00
Dunajski, Bartosz
b82cdd6b8e Program MI_SEMAPHORE_WAIT for dependencies during blit operations
Change-Id: I8b0e467886bfb23d026a0c13be514343a22a20a1
Related-To: NEO-3020
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-21 14:18:16 +02:00
Dunajski, Bartosz
4f4ef14b9b Accept different copy directions during blit operations
Change-Id: Idb59458b46337ca0095056857dbd75bf116b6723
Related-To: NEO-3020
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-16 18:53:30 +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
Dunajski, Bartosz
ccd93e1ea8 Add method to dispatch blit operation from hostPtr to Buffer
Related-To: NEO-3020

Change-Id: If76f2c659c3ee343693a6d3ced86a47d7ed0bf61
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-04-10 15:17:44 +02:00
Dunajski, Bartosz
2243fc950b Improve waiting logic in HostPtrManager
Change-Id: Ib762a9604ad3d398044f289fa8a1aa4df2b4d37a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-04-03 08:47:49 +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
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
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
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
Dunajski, Bartosz
2d77b86e70 Allow Device creating multiple CSRs [5/n]
- Move Engine type to OsContext
- Move OsContext to CSR
- Improve EngineMapper logic
- CompletionStamp cleanup

Change-Id: I935cb7169c8c48cd09837e20e3da06f6dd3437b9
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-27 14:25:04 +01:00
Mrozek, Michal
08424d798f Enable power saving mode for queues created with throttle hint low.
- When queue is created with throttle hint low it should be power conservative
- With this change whenever queues with low throttle setting requests wait
for GPU completion, such wait will be handled in power conservative manner.
- Whenever GPU is not completed, waiting thread will be put to sleep and will
for GPU completion that triggers the wake up interrupt.

Change-Id: I9f34872a38ab9f5952f9d9623ea43503fc3dd587
2018-11-16 15:20:31 +01:00
Mateusz Jablonski
0e0a280803 Create structure UsageInfo for task count and residency task count
Change-Id: I0899c88d9e567a09ba46461ae69cf6c80f713e67
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-15 14:07:05 +01:00
Mateusz Jablonski
815ae851b7 Graphics Allocation: store task count per context id
Move definition of allocations list method to internal_allocation_storage.cpp

Change-Id: I4c6038df8fd1b9335e8a74edbab33b78f9293d8f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-06 12:43:47 +01:00
Mateusz Jablonski
a30c70d84b Remove cleaning allocation lists methods from memory manager
Change-Id: I4a58a5373e7dc4cf8dc5d90390e84c4f23689139
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-29 10:35:03 +01:00
Mateusz Jablonski
4f028d13a1 Command stream receiver: use memory manager from execution environment
Change-Id: I236218a73bd7dac6e5744e3596f146b77b5ca1c8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-16 12:14:55 +02:00
Maciej Dziuban
bc4700a193 Add OsContext argument to MemoryManager::makeNonResidentEvictionAllocations
OsContext has to propagate through following calls first:
- WddmCommandStreamReceiver<GfxFamily>::processEviction
- CommandStreamReceiver::makeSurfacePackNonResident

Change-Id: I7559c7406b2860c51905c9961cec251fac231b08
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-10-05 01:28:31 +02:00
Koska, Andrzej
2110ba6ca4 Passing correct taskCount to waitForTaskCountAndCleanAllocationList
Change-Id: Ib0d2474bcd5827f8030331f7ef45ffc2805b955b
2018-10-04 23:53:43 +02:00
Maciej Dziuban
f48b90ffee Change CommandStreamReceiver::flush() argument to a reference
Change-Id: Ic933a297d4c4e243138d0d62323ba82a8b91240f
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-09-25 17:28:44 +02:00
Mrozek, Michal
78f828fcd1 Make residency in graphics allocation OsContext dependent.
- Graphics Allocation now holds residency control per OsContext.

Change-Id: Ie0a0d3aa9fdaf542fdd42dee3aba236a5af635c7
2018-09-20 16:44:04 +02:00
Maciej Dziuban
fafde2ec15 Delegate all MemoryManager::getResidencyAllocations() calls through CSR
Change-Id: I9cfbfd86d39b5341598ff2bd8883e13605c58b72
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-09-13 14:56:06 +02:00
Dunajski, Bartosz
b74280beb6 Check EnableTimestampPacket debug variable once and set as CSR mode
Change-Id: Ia6e7caa96f3b46b30590fb46a1fb37fa153adeb4
2018-09-06 11:19:02 +02:00
Mrozek, Michal
fb735e5ee5 Move SSH size obtaining logic to dedicated function.
Change-Id: I1ea2ceb69f0ae06fe8e37f7769015933295dd6cd
2018-09-03 16:54:38 +02:00
Pawel Wilma
4a12deea2b Add support for reduced GPU address space
Change-Id: I9ebbc8c51039bb533b44c6b80e717e1489a20a43
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-09-03 13:51:36 +02:00
Mateusz Jablonski
92bfd2e3d2 Move OsContext to Device
Change-Id: I030b65372fbdc075423d22720e9da34ac65b8e68
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-09-03 10:42:26 +02:00
Chodor, Jaroslaw
ad9710bec2 Refactor around binding table programming
Change-Id: I4cad63b11937531e36ea9d92cee606ea8941c9ef
2018-08-29 14:35:52 +02:00
Stefanowski, Adam
1ad70dfebe Decouple memory manager and device
Change-Id: Ia64cc955e1d290cad4c50b6a2a41052d9acf0eec
2018-08-20 13:44:31 +02:00
Mrozek, Michal
1599ea800e Pass execution environment to command stream receiver.
Change-Id: I598f67f8b005b5ce8249b638e080657eb6dc3547
2018-08-08 17:10:39 +02:00
Mrozek, Michal
f60847b64e Pass device to flushTask.
- do not obtain it from memory manager

Change-Id: Icc7c03dc925c69ec5932c5812151ac28dc34d20d
2018-08-01 14:11:06 +02:00