Pawel Wilma
8c1db4fb2f
Code cleanup for reduced GPU address space
...
Change-Id: Ibce79ddbe1f03dac1813b5dc2356a9db86b60200
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com >
2018-09-10 16:16:06 +02:00
Dunajski, Bartosz
7ec0989eea
Obtain new TimestampPacket before releasing old node
...
Change-Id: I243d50e32967a0accea2d73fdd5ff4935bc03449
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-09-10 15:58:00 +02:00
Dunajski, Bartosz
24136414e6
Use Semaphore to wait for dependencies from different device
...
Change-Id: I154f377c77847e93d5b188a5b2252e74d9d70b75
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-09-10 10:00:49 +02:00
Dunajski, Bartosz
d04614dce3
Use Semaphore to wait for dependencies on the same device
...
Change-Id: Ib04c960c50183c080d02753815ece80b58d1980e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-09-07 22:34:44 +02:00
Mrozek, Michal
393ce116e7
Remove flushWaitList method.
...
- No longer needed.
Change-Id: I9e255067fb4b0d52a42f6a49145b3a8d591b5e74
2018-09-07 15:27:37 +02:00
Dunajski, Bartosz
eb6b574561
Improve TimestmapPacket write commands size estimation
...
Change-Id: Idf80401f4360342a162d54aba7ffbe6dfcf714e8
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-09-06 16:13:07 +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
Dunajski, Bartosz
1b04210c6a
Extend TimestampPacket data with Submit field
...
Change-Id: Ia2a23003476db06afeee25ca7766cfd1bc6da4a3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-09-06 10:37:03 +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
Filip Hazubski
85d7e0e4c8
Refactored GPGPU walker for easier maintenance
...
Change-Id: Ie10272f363d3e583893c46123bb7a56a5fd9ac45
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2018-09-03 11:04:24 +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
Dunajski, Bartosz
c014c49102
Pass TimestampPacket to dispatchWalker during enqueue call
...
Change-Id: Ia2b9206d4c2bb69232bfe9e7d68d195f3a558926
2018-08-31 19:57:47 +02:00
Dunajski, Bartosz
570c0843ef
Handle TimestampPacketNode residency
...
Change-Id: I1769d67426ca704b600931b58d3f505bef0e893d
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-30 11:53:56 +02:00
Dunajski, Bartosz
41914d3058
Make enqueue blocking if parent kernel requires aux translation
...
Change-Id: I678e1045d84f15e30223a99438bbb7057e172cff
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-29 19:33:00 +02:00
Dunajski, Bartosz
da0f9381dc
Timestamp Packet ownership
...
- Tag allocator: reference count tracking
- Obtain tag by command queue and pass to Event if exist during enqueue
- Handle Timestamp Packet lifetime on Event and CmdQueue destruction
Change-Id: I9a5969830ea7a9d729e6f70519d8c28ff70fcf06
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-29 13:47:46 +02:00
Dunajski, Bartosz
a807b9a90b
Initial implementation of Timestamp Packet write
...
Change-Id: Ic498bcf9795f54fbb5fb5a8d07ed17fa70dc4f1a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-28 08:27:13 +02:00
Milczarek, Slawomir
f6f9c0f456
Add notify functions to enqueue read buffer and image calls
...
This commit adds notifications to enqueue read buffer and image calls
and setters/getters to mark/check if an allocation is dumpable.
Change-Id: I123f24752d2a86abcf934e0d404f4e0ecf1729cc
2018-08-22 21:43:17 +02:00
Maciej Dziuban
b91c14f70e
Delete Device::getBuiltIns()
...
Change-Id: I9d1968dfb2ba4a56020fd17152119add726106e1
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-08-22 16:54:53 +02:00
Mateusz Jablonski
6286f245a1
Fix generation local ids for image layout with local workgroup size 12x12x1
...
Change-Id: Ib723b132b570d8cfb3f72f32ddadde869607c354
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2018-08-22 14:32:07 +02:00
Maciej Dziuban
e0e48203d2
Move BuiltIns to ExecutionEnvironment
...
Change-Id: Ib2a1b82cc7858c898bb32820aad106a01d1325ad
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-08-21 23:15:47 +02:00
Dunajski, Bartosz
931b462ee1
Disable NonAux to Aux translation for Parent Kernel
...
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
Change-Id: I863608fe3652e7e777a1e841d79b5b56e7362a3f
2018-08-21 15:12:25 +02:00
Mateusz Jablonski
7afba8d50b
Cleanup after adding new local ids layout for images
...
- Apply layout for images only when Z size is equal to 1
- Fix generating local ids for local workgroup size
when any size is not power of 2
- Revert commit c53c09da45
Change-Id: Ie745782fafce2facbd877e3e33e4ba347cb2b09e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2018-08-21 11:27:30 +02:00
Dunajski, Bartosz
044255e9bd
Pick Main Kernel for LWS and numWG in dispatchWalker()
...
Change-Id: I4fd0746ec77890ceacbf333966bb00a4ea99b186
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-20 13:51:35 +02:00
Dunajski, Bartosz
c7a49666d5
Refactor querying Main and Parent Kernel from MultiDispatchInfo
...
Change-Id: I723d91f2f445bc7af1bcb0de46f8ac07837f3449
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-17 13:51:32 +02:00
Mrozek, Michal
c53c09da45
Limit local work sizes where local ids limit is applied.
...
Change-Id: Id9a84d6a7d4530344771f48fd278cff9ab2dd927
2018-08-16 12:34:09 +02:00
Mateusz Jablonski
47f3dad619
Apply (2/4)x4x1 layout when generating local ids for kernel with images only
...
- For SIMD8 apply 2x4x1 layout
- For SIMD16/SIMD32 apply 4x4x1 layout
Change-Id: I31bceb49387011c66da5f96ad2a71125b96d4cda
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2018-08-14 12:22:20 +02:00
Dunajski, Bartosz
a5950500a3
Aux translation [4/n]: Lock BuiltIn Kernel + refactor BuiltIns locking
...
Change-Id: Ic7dc9b86a4aa5f93f1c4bcdf80b9598ecdff9713
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-08-14 10:56:16 +02:00
Lukasz Towarek
95e28faca0
Fix division by zero in enqueueKernel
...
Change-Id: I8e7d3db39805133a5af545e65a94fb19433a2a41
2018-08-14 09:02:17 +02:00
Dunajski, Bartosz
6ca84c278a
Aux translation [3/n]: Dispatch AuxTranslation builtin when required
...
Change-Id: I9bd0294de7980ac01ebb3c2d696eba6fd6a456ec
2018-08-13 12:15:30 +02:00
Dunajski, Bartosz
b4f53fdfa7
Pick applicable buffers for aux translation
...
Change-Id: I60a28cd9e0dec61120b1ae5c42dfe0cb852eb387
2018-08-08 09:23:51 +02:00
Chodor, Jaroslaw
c10d0d79f5
Workgroup walk order
...
Change-Id: Id02db6a383e21dc17be64655e7f51a84103b2e0b
2018-08-07 13:54:10 +02:00
Mrozek, Michal
d80dbb1ae0
Do not take ownership on device.
...
- Command Stream Receiver should be used instead for locking.
- Remove not needed synchronization in clSetUserEventStatus
Change-Id: I17050dc70cb0be03b2003043a9666ba8df1a83c9
2018-08-07 09:29:50 +02:00
Dunajski, Bartosz
ec6f0f9f86
Aux translation [1/n]
...
- Mark Kernel for aux translation
- Initial implementation of dispatchAuxTranslation for future use
Change-Id: Ifca1c9a893876eecc5678cdc4f564b2bfcae959a
2018-08-07 09:07:25 +02:00
Mateusz Jablonski
9ae4f390d1
Remove command queue, completion stamp and device from mem obj
...
Remove setCompletionStamp function from Surface
Change-Id: I25f3040a91892495e55cb4924f1538276de6264e
2018-08-01 16:17:13 +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
Dunajski, Bartosz
239ebf9eab
Improve AllocationType operations: dont do bit operations on enums
...
Change-Id: Ie70ca9e2a93ec80b1cd655bad622db9e12abb7f7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2018-07-20 09:12:58 +02:00
Mrozek, Michal
2a1feaffe9
Initialize stack variables.
...
Change-Id: I3fda7163cb649fe4754c46d83c641921593e1823
2018-07-19 16:19:17 +02:00
Mrozek, Michal
1dc50172d3
Remove redundant casts.
...
Change-Id: I9bfe4615ad0eea739ad0a780426abc007163c961
2018-07-17 19:02:36 +02:00
Hoppe, Mateusz
55a045ebe1
Refactor graphics memory allocation scheme
...
- replace createGraphicsAllocationWithRequiredBitness with more general
methodallocateGraphicsMemoryInPreferredPool based on passed
AllocationData
- proper flags for allocation selected based on AllocationType
- remove allocateGraphicsMemory(size_t size, size_t alignment)
and use allocateGraphicsMemory(size_t size) instead where default
alignment is sufficient, otherwise use full options version:
allocateGraphicsMemory(size_t size, size_t alignment,
bool forcePin, bool uncacheable)
Change-Id: I2da891f372ee181253cb840568a61b33c0d71fc9
2018-07-11 15:48:05 +02:00
Hoppe, Mateusz
684b1d75ba
Refactor GraphicsAllocation::AllocationType and allocationType enums
...
- change GraphicsAllocatoin::AllocationType to scoped enumeration
so that ALLOCATION_TYPE_ prefix in every enum value can be removed
- all accesses are typed (example AllocationType::IMAGE)
- Rename allocationType to AllocationUsage to eliminate confusion
with multiple AllocationType enums / types
Change-Id: I16003297ecfcb0aaa5779ad00706c5d983914bbe
2018-07-06 13:00:08 +02:00
Milczarek, Slawomir
eb1b5ded9c
Add support for AUB subcapture (filter and toggle modes)
...
This commit adds a capability to selectively enable/disable AUB capture,
i.e. by toggling the registry key from the outside or specifying the filter
with a kernel name and/or kernel start index and kernel end index.
Change-Id: Ib5d39c21863fbc4a95aa73c949b9779ff993de0f
2018-06-15 13:02:27 +02:00
Artur Harasimiuk
75ab0c6fe1
Switch clang-format to 6.0
...
Change-Id: Id96d1f47fb3d479d10d1022f1259dc030a148192
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com >
2018-06-14 09:45:00 +02:00
Zdunowski, Piotr
0cc10e47cc
Use device instead of context when programing surface state.
...
Change-Id: I67615036d373cf905762a43a92562bf3d84854a5
2018-06-11 17:20:11 +02:00
Woloszyn, Wojciech
8a488ad52f
Fix reported row/slicePitch for mip-maps
...
- use information from gmm correctly
- modify computation on gen8
Change-Id: Iaefcc20ce9436ef70cd2f4bc36654932c4b5af49
2018-05-22 10:36:54 +02:00
Zdanowicz, Zbigniew
33fee15711
Change interface to pass Interface Descriptor Data as pointer
...
Change-Id: I0f33109b800a7607206954bb1e5cb0826290e6f3
2018-05-11 14:35:53 +02:00
Mrozek, Michal
34ff5852eb
Add capability to csr to allow N:1 aggregation when ooq is created.
...
- This allows applications to force the N:1 aggregation by creating out
of order queue.
- That switches csr to N:1 submission model where commands from multiple
command streams may be aggregated.
- That forces scenarios returning an event to be aggregated as well.
Change-Id: I8fd8d7f88bb2665234ee90870133120b206710a8
2018-04-26 15:41:20 +02:00
Mrozek, Michal
8d2df3c332
Move indirect heaps from command queues to csr.
...
-This is required to enable N:1 submission model.
-If heaps are coming from different command queues that always
mean that STATE_BASE_ADDRESS needs to be reloaded
-In order to not emit any non pipelined state in CSR, this change
moves the ownership of IndirectHeap to one centralized place which is
CommandStreamReceiver
-This way when there are submissions from multiple command queues then
they reuse the same heaps, therefore preventing SBA reload
Change-Id: I5caf5dc5cb05d7a2d8766883d9bc51c29062e980
2018-04-26 14:05:40 +02:00
Pawel Wilma
a0c044e6d2
Extend batch buffer flattening in AubCSR to BatchedDispatch mode
...
- batch buffer flatening in batched mode
- added MI_USER_INTERRUPT command
- added GUC Work Queue Item
Change-Id: I35142da34b30d3006bb4ffc1521db7f6ebe68ebc
2018-04-26 12:45:02 +02:00
Zdanowicz, Zbigniew
d94b853c32
Separate HW commands from class declaration and interface
...
Change-Id: Ia49098171f4b7814c42a35686354713a322c9df7
2018-04-25 14:03:00 +02:00
Mrozek, Michal
ce8c44cae3
Add check for local work group size in clEnqueueNDRangeKernel call.
...
- Incoming local work group size cannot exceed device capabilities.
Change-Id: I89a7503155c71443e3ebc630debb5d5b466c6cb5
2018-04-20 08:16:16 +02:00