Commit Graph

47 Commits

Author SHA1 Message Date
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
Zdanowicz, Zbigniew
8e1e874a76 Refactor headers and reorder include order
Change-Id: I6b341e2b37e569af7d741bfd7a63804c0b25a4c9
2019-02-14 13:39:01 +01:00
Venevtsev, Igor
5e8fb19e5d Remove OCL Events concept from EnqueueOperation and dispatchWalker
Change-Id: Iec55b0be673a2a40b9621212add224a33d4abc5d
2019-02-12 08:46:18 +01:00
Dunajski, Bartosz
dc181defba Use GpuAddress for TimestampPacket programming
Change-Id: I1303605c33e2e0267a1716e12a0bfcb341fcfbd7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-11 15:31:17 +01:00
Chodor, Jaroslaw
43856e88b5 Refactor around cache flush and command queue
Change-Id: I277e27cbc60fbbb015c0024f171697408879ec0b
2019-02-10 17:59:33 +01:00
Venevtsev, Igor
66e3f3c16c Remove OCL Events concept from command stream receiver
Change-Id: I4d5a97b41efe601c92c2f3f33e9e24bb7d4fa3d2
2019-02-08 15:02:40 +01:00
Chodor, Jaroslaw
7d04159f76 Refactor around cache flush
Change-Id: Iff32af0111375f4ffc804c82e6d753d57fe94e80
2019-01-31 22:19:06 +01:00
Venevtsev, Igor
303014582a Extend semaphore synchronization for different command stream receivers.
Change-Id: Ic904b8c1e052adbb7b2ef82a6dec74ec69837f9f
2019-01-30 09:33:41 +01:00
Zdanowicz, Zbigniew
158f200476 Add HW commands const definitions
Change-Id: If2e9d7f7f707b7b8c7bd8dbd3853ab3b6dad0c9a
2019-01-18 12:13:25 +01:00
Pawel Wilma
14e8fdd8f8 Fix for incorrect timestamp offset calculation in event profiling info
Change-Id: I634c29daf4734b24e4075542dc6550c531977f0a
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-01-11 16:39:05 +01:00
Napiatek, Henryk J
f7e0decf44 Improve capturing profiling timestamps
Change-Id: I3a568afb664cae5c871e53de2c36fc8be65a4bdf
2019-01-03 12:35:56 +01:00
Artur Harasimiuk
b5f443edc0 Revert commit cc1f4bed60.
This reverts commit cc1f4bed60.
Revert "Revert "Use GPU instead of CPU address in programming commands
for HwTim(...)""

Change-Id: Iff122612bb46ba80bcc70b07b2609bfd5f0b9653
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-12-21 13:25:49 +01:00
Pawel Wilma
cc1f4bed60 Revert "Use GPU instead of CPU address in programming commands for HwTim(...)"
This reverts commit 6202b2222b.
"Use GPU instead of CPU address in programming commands for HwTimeStamps"

Change-Id: I085382d95538ae41068a21c628d606039bf9cdf0
2018-12-21 01:16:46 +01:00
Kamil Diedrich
4b1871bf0e Add pipe control before and after buffer translation
Change-Id: I4ee32c410e1ac2bcdb3ceae203cd461de79146a5
2018-12-20 09:30:53 +01:00
Zdanowicz, Zbigniew
3dca095ccf Add cache flush command after WALKER command
Change-Id: I3983dc6c0797047e17cc8189655a22a22e85892b
2018-12-19 13:15:33 +01:00
Pawel Wilma
6202b2222b Use GPU instead of CPU address in programming commands for HwTimeStamps
Change-Id: If9ab4cbd052dfa46b5d901073df4c583c2ae361f
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-12-12 13:27:53 +01:00
Mrozek, Michal
61e7ae9280 Refactor pipe control post sync programming.
Change-Id: I81f4840345494c6d32679e29faaff786677cb4b0
2018-11-23 11:42:32 +01:00
Dunajski, Bartosz
3ad33bf1b8 Allow Device creating multiple CSRs [3/n]
Add CSR from Device to CommandQueue

Change-Id: Iaccf3c73d25e357242837677777d0513e81f520e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-23 10:51:34 +01:00
Piotr Fusik
e66920a8f8 Fix typos.
Change-Id: Ie7add32684f812e11281668d9b93910384086c62
2018-11-15 12:18:03 +01:00
Piotr Fusik
4bdf183c9d Use the runtime CS size estimation in ULTs.
EnqueueOperation<GfxFamily>::getTotalSizeRequiredCS was ULTs-only.
Replace with the real CS size estimation from getCommandStream.

Change-Id: I4d15d342eb5edff6511acc9c80e13e9cc92d81ac
2018-10-23 13:07:42 +02:00
Dunajski, Bartosz
73b2e947a5 Multiple TimestampPackets handling
Change-Id: Ia5936c3d0a34b892aa4444026a5aebc681f126c2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-10-05 01:54:35 +02:00
Zdanowicz, Zbigniew
2d7077e138 Fix correct command buffer estimation for non-kernel enqueue calls
Change-Id: I8655d1824c229f13104e085f55fa15c310a17210
2018-10-05 00:47:54 +02:00
Filip Hazubski
3fdb17bc7f Move hw specific GpgpuWalkerHelper functions to separate file
Change-Id: If2e793d0c3de1a5245bbdee065111a504807b134
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2018-10-03 20:19:47 +02:00
Zdanowicz, Zbigniew
2632b21fd1 Organize dispatching of thread data for better reuse of code
Change-Id: I8c156f8b5a50f6fa4dfb5218cdadb2840ff556eb
2018-10-02 18:47:13 +02:00
Filip Hazubski
b16bd14f37 Change virtual class HardwareInterface to static
Change-Id: I4f1f59ecb51b95041dc6dcc6c606b94595813f53
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2018-10-01 15:11:43 +02:00
Dunajski, Bartosz
cbd017d495 Handle TimestamPacket with implicit dependencies ownership
Change-Id: I22a4de4e9eb904c359583e235e0de54a7c743e07
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-28 01:48:02 +02:00
Zdanowicz, Zbigniew
51e888dfc7 Add new arguments to GpgpuWalkerHelper<GfxFamily>::setGpgpuWalkerThreadData
Change-Id: I19e42a75f5224f6e3588c2c7be4a3451714bb5ef
2018-09-26 14:56:01 +02:00
Zdanowicz, Zbigniew
9e8a434464 Add new parameter to dispatch payload data
Change-Id: I0034c5a40de65a050e19691b13793b7053354757
2018-09-26 14:43:46 +02:00
Dunajski, Bartosz
a52bcd830f Make TimestampPacket from previous enqueue resident
Change-Id: I4534b80cc6019b3c5ff210ca686b17b299390028
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-20 22:34:28 +02: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
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
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
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
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
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
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
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
Zdanowicz, Zbigniew
33fee15711 Change interface to pass Interface Descriptor Data as pointer
Change-Id: I0f33109b800a7607206954bb1e5cb0826290e6f3
2018-05-11 14:35:53 +02:00
Zdanowicz, Zbigniew
d94b853c32 Separate HW commands from class declaration and interface
Change-Id: Ia49098171f4b7814c42a35686354713a322c9df7
2018-04-25 14:03:00 +02:00
Zdanowicz, Zbigniew
e51cb6bd0b Separate struct EnqueueOperation declaration and implementation
Change-Id: I537660867a1c98f957280237c14b7a1554fce3db
2018-04-10 16:36:48 +02:00
Mrozek, Michal
ffa9b097f5 [26/n] Internal 4GB allocator.
- change the way we handle blocked commands.
- instead of allocating CPU pointer and populating it with commands, create
real IndirectHeap that may be later submitted to the GPU
- that removes a lot of copy operations that were happening on submit time
- for device enqueue, this requires dsh & shh to be passed directly to the
underlying commands, in that scenario device queue buffers are not used

Change-Id: I1124a8edbb46777ea7f7d3a5946f302e7fdf9665
2018-04-09 10:47:37 +02:00
Zdanowicz, Zbigniew
b6b92ae808 Create GpgpuWalkerHelper class
Change-Id: Ia9aa7b816356aff57234b46ea3509b6bd9b7f14b
2018-04-04 16:42:16 +02:00