Commit Graph

152 Commits

Author SHA1 Message Date
Artur Harasimiuk
40146291ad Update copyright headers
Updating files modified in 2018 only. Older files remain with old style
copyright header

Change-Id: Ic99f2e190ad74b4b7f2bd79dd7b9fa5fbe36ec92
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-09-20 18:02:35 +02:00
Dunajski, Bartosz
7da499d7cd Dont keep dependency on previous TimestampPacket in OOQ mode
Change-Id: Ia60d9ceafcf2789fbc951ca2a09ee3e515a9249a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-18 18:50:48 -07:00
Dunajski, Bartosz
097d09c593 Make resident all TimestampPacket allocations from Events
Change-Id: Ic4d2d1a328dca204675c4d0aee6a7efb5a71f940
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-19 01:53:12 +02:00
Mrozek, Michal
7c7b405219 Remove makeCoherent from getTagAddress.
- if Tag allocation was not yet made resident then makeCoherent will fetch
uninitialized data, causing finish to return earlier then it should
causing later synchronization issues.
- simplify rest of method, remove redundant code.

Change-Id: I7bfcbd9f2d7170f41473a97f51856d82671b6638
2018-09-18 13:53:18 -07:00
Filip Hazubski
ce8284bade Move dispatchWalker() to seperate class
Change-Id: Idc95df3d67775022f2197c1f973182acb3558a2d
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2018-09-13 10:29:13 +02:00
Dunajski, Bartosz
2b89486fb1 Program Semaphore to keep dependency on previous enqueue
Change-Id: I511f39811769f1add179ea5d9cb331fa9c5ccec2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-12 12:23:17 +02:00
Mrozek, Michal
1530d7832f Store command stream receiver in device.
Change-Id: I133ce4435e189e5bb8473ad4736fe0b02047dffe
2018-09-11 13:31:04 +02:00
Dunajski, Bartosz
2366c41154 Simplify Semaphore programming
Change-Id: I3322be137bbc1fe6f63baada26cf65baf821b4c1
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-11 11:06:56 +02:00
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