Commit Graph

68 Commits

Author SHA1 Message Date
Artur Harasimiuk
7864c03b0a clang-tidy cleanup
Related-To: NEO-3676
Change-Id: I538c4ee3a370a71a7e470a441cd101c9ed1b285d
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2019-10-15 19:55:43 +02:00
Kamil Diedrich
115070767c Move graphics_allocation to core folder
Change-Id: I16b8dbb57c2a40126826a232332c18ba9f563220
2019-09-18 05:26:55 +02:00
Jobczyk, Lukasz
2e8e6bdb18 Move majority of utilities to the core dir
Related-To: NEO-3677

Change-Id: If2e876028b765ad3ecf5f75db8755623b82955b8
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-12 15:07:02 +02:00
Jobczyk, Lukasz
882a216688 Move Debug helpers to the core dir
Related-To: NEO-3677

Change-Id: I2c98595190fadfa8ffd9e378e774c0d4485cbf9e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-05 16:00:35 +02:00
Jim Snow
4360aff03c Move runtime/helpers/aligned_memory.h to core/helpers
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
Change-Id: I15de094c51d4eb18bfff4d17fd34e817b5525fda
2019-08-06 23:56:24 +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
Mrozek, Michal
477905f813 Simplify isStatusCompleted.
Change-Id: I6ea87266f254337277c3db833a2bc91cada2342a
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-10 07:07:10 +02:00
Mrozek, Michal
d68f4e2591 Simplify peekIsSubmitted.
Change-Id: I7947afc01ee9cb3a35e35530bd7d8c6b13f4d277
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-09 16:44:17 +02:00
Mrozek, Michal
6ffcd51847 Fix race in events scenarios.
- It could happen that 2 threads try to update the same event within tree
- First thread starts to submit command, it releases cmdToSubmit
- Second thread doesn't see the command and follows
- Second thread thinks that it submitted the command so it follows to
subsequent steps which are child events notification
- We end up with corrupted enqueue sequence as child may submit prior to
parent.
- With this change each submit step is synchronized basing on task count
- When second thread enters submit command without task count being set
it wait for first thread to properly set it.

Change-Id: Ic2ddaea17f9af8cab6781320edae2c268dd0b189
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-09 14:45:07 +02:00
Mrozek, Michal
baa11187c3 Simplify isStatusCompletedByTermination.
- remove default parameter.
- remove branch.

Change-Id: Ia829adfc684057516a2fc204e853ad3948853e22
2019-07-09 09:48:16 +02:00
Piotr Maciejewski
d1d794c658 Metrics Library Performance Counters implementation.
Signed-off-by: Piotr Maciejewski <piotr.maciejewski@intel.com>
Change-Id: I0f00dca1892f4857baaebc75ba2208a4f33db1bf
2019-07-04 15:56:47 +02:00
Dunajski, Bartosz
70f92cf03c Rename KernelCommandsHelper to HardwareCommandsHelper
Change-Id: I0b92a2d74bc96658274e4a02fec0f322e87681b2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-12 13:45:12 +02:00
Piotr Fusik
086ef7c461 Simplify code by introducing TimestampPacketStorage::Packet.
Related-To: NEO-2872

Change-Id: Ifce455f1a48f2db2bf16af2dd32208ee4542204d
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-18 16:14:04 +02:00
Piotr Fusik
745c20c78a Rename TimestampPacket to TimestampPacketStorage.
Related-To: NEO-2872

Change-Id: Id1f78491912c44890ae7ead2cac12ec8eb073628
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-16 15:34:28 +02:00
Piotr Fusik
dd4b3a9f14 Simplify HwTimeStamps operations.
Related-To: NEO-2872

Change-Id: Id8e49082b88d7233b9d3ceb9074ce093c100ec14
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-15 10:51:09 +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
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
Piotr Fusik
378bd28bab Change the signature of MemoryManager::createGraphicsAllocation.
Change-Id: Ia82235ff2831fd5b3436d488a5946bb49d63ce91
2019-02-25 16:08:35 +01:00
Hoppe, Mateusz
432b8f20a7 Allow cpu copy with debug keys only when ready waitlist events
Change-Id: If9293787c76b8248a84e25d03cbf9a9b5aaf7cca
2019-02-22 17:39:57 +01:00
Kamil Diedrich
a7b46ccdbd Add RAII for cl_objects
- add removeVirtualEvent to cmdQueue fixture
- add const keyword in event functions

Change-Id: I11354eb8fceb15ae2c58bddd327863a15aab6393
2019-02-12 11:19:35 +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
Kamil Diedrich
371eef3895 Lock csr instead of device
- replace device lock to csr lock
- add missing lock CSR in event

Change-Id: I869e46232c919a80da619c44c08e9cd78188afac
2019-02-08 12:33:37 +01:00
Kamil Diedrich
e1eab521e7 use release for cl-objects instead of delete
- fix for data race in events
- modification of the addition child event

Change-Id: I6ea3a413f13f13a91d37d20d8b9fad37d0ffafb9
2019-02-05 14:09:32 +01:00
Jobczyk, Lukasz
fb0424bc5a Distinction between calcProfilingData functions
Change-Id: I6f9e646d2442870e9c0345996970409b953b4d42
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-01-31 15:19:17 +01:00
Jobczyk, Lukasz
c1cb1f9be6 Add profiling calculation from timestamp packets
Change-Id: Ie7f8c703ca5ea5eb1f5207871ef94cbc7ece18b7
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-01-31 13:32:52 +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
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
Dunajski, Bartosz
a35e3b792d Return valid TaskLevel for UserEvent and GlSyncEvent
Change-Id: Ic2bcb64e92e07b94c1af47b109af1274bf6c8c3e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-06 10:09:46 +01:00
Dunajski, Bartosz
1f7448425d Allow Device creating multiple CSRs [7/n]
Create and initialize all supported Engines

Change-Id: If0adf1a06b5005ef2698cebc6f1aaa6eacf562ec
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-30 15:48:44 +01:00
Piotr Fusik
87bb6afa56 Move stamps allocators from memory manager to CSR.
Change-Id: Ib399e462cdddad89fcc470df4c4f0f5e4591a6b2
2018-11-27 14:52:06 +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
Dunajski, Bartosz
d6870a896b Reduce tag pool size to 1 for AUBs
Change-Id: I3a3513250b10e899795e149bff2739193a725f84
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-20 11:42:32 +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
Dunajski, Bartosz
66427f60c6 Handle TimestampPackets for non-kernel enqueues
Change-Id: I52ec4f43b10bf6e2a10b2455d32a90a606645d29
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-10-10 04:21:30 +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
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
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
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
789cb3327b Add support for returning raw GPU timestamps via registry flag.
Change-Id: Id80ef2a95132f1cdc1d14e45d406925b11599db1
2018-09-12 13:49:01 +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
e3df4edb90 Add deferred list to TagAllocator for nodes that are not completed
Change-Id: I0672c487315a96540184eda793132c79c7777527
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-09-05 11:14:23 +02:00
Dunajski, Bartosz
ed26e38f38 Reinitialize new tag taken from TagAllocator
Change-Id: I1fbc06224e64b77de0f481553eddc4abde8f8a1c
2018-08-31 10:45:06 +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
Jobczyk, Lukasz
6836bcdb7c EventsTracker refactor
Change-Id: I0b43d0f9961fbb776930c1b40a01484a0316be33
2018-08-04 13:45:43 +02:00
Jobczyk, Lukasz
56125ea381 Add tool for tracking events
Change-Id: Id61d814e4629a41a279d46097ec8b4f94a224234
2018-07-11 13:34:56 +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
Mateusz Jablonski
09e4dab4f6 Create os specific thread implementation
Change-Id: I267d6cb021a75713c28a7bbf29384da13d2a7217
2018-05-23 17:27:31 +02:00
Artur Harasimiuk
5fbdad88c6 refactor config.h usage
- add defines to command line
- remove most occurences of include "config.h"

Change-Id: I19d65d83c895fc6143d319d057a50e5ae3e78830
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-04-26 10:02:15 +02:00