Commit Graph

286 Commits

Author SHA1 Message Date
Michal Mrozek 787c74ce7a Do not make dynamic allocations in hot calls.
std::stringstream does memory allocation even though it is not used.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-04-01 20:23:59 +02:00
Bartosz Dunajski 779bca39a7 Debug flag to add sfence instruction prior to DirectSubmission dispatch
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-01 15:53:03 +02:00
Sebastian Luzynski 01e76998d4 Remove unused CPU features
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2022-03-30 18:20:08 +02:00
Sebastian Luzynski cf906030ac Add neon intrinsics for aarch64
Related-To: NEO-6452

Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2022-03-29 18:22:32 +02:00
Patryk Wrobel 4cde6ea1ce Detect GPU hangs in CommandMapUnmap::submit()
This change introduces detection of GPU hangs
in CommandMapUnmap::submit() as well as in Event::submitCommand().
ULTs have been added to cover the new code.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-03-15 13:17:41 +01:00
Michal Mrozek 721c59d3d5 Move to StackVec for timestamp packet container.
Do not use std::vector in hot path.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-03-03 10:34:06 +01:00
Baj, Tomasz f2e1361541 Remove TODOs
Related-To: NEO-6674

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-02-23 13:15:05 +01:00
Bartosz Dunajski 4b0d986876 Move AllocationType enum out of GraphicsAllocation class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-04 17:49:09 +01:00
Katarzyna Cencelewska 45d23868de Remove device enqueue part 15
- remove DEVICE_QUEUE_BUFFER

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-02-03 16:19:07 +01:00
Maciej Plewka 9d8ce7aace Command container appends BB_END on cmd buffer allocation end
When linear stream created for command container has not enough space
for command and BB_END it will program BB_END and allocate new command
buffer allocation. Pointer returned from getSpace in this case will
return storage from new command buffer allocation.

Related-To: NEO-5707

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-01-31 16:15:37 +01:00
Ayush Pandey 715b9d31d2 Find sscanf alternative.
Used strtol() to write sscanfUtil to extraxt info of BDF pcipath.

Related-To: LOCI-1002

Signed-off-by: Ayush Pandey <ayush.pandey@intel.com>
2022-01-21 09:02:48 +01:00
Lukasz Jobczyk 95585a81f7 Optimize timestamp packet dependencies
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-30 09:48:36 +01:00
Lukasz Jobczyk 35f6cd00ee Add option to log allocations to std out
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-23 15:45:42 +01:00
Lukasz Jobczyk 14e338e669 Revert "Optimize timestamp packet dependencies"
This reverts commit c365b422963917e7b882f9db985969c036f0fa3f.

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-23 14:29:29 +01:00
Bartosz Dunajski dfdd3c597a Remove redundant BUFFER_COMPRESSED allocation type
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-07 13:35:49 +01:00
Maciej Dziuban e3bb526067 Optimize timestamp packet dependencies
- Clear dependencies even if last engine changed
- Do no program semaphore waiting for blit when blit is submitted with gpgpu
- Track barrier timestamps to correctly synchronize blits in OOQ

Related-To: NEO-6444
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-12-07 11:47:50 +01:00
Zbigniew Zdanowicz 47dbe359bf Add command encoder for store data command
Related-To: NEO-6262

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-02 20:56:07 +01:00
Lukasz Jobczyk 63116e4100 Use wait utils while waiting for timestamps
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-02 17:49:05 +01:00
Krystian Chmielewski 8e57e48695 L0: Pass debug zebin to SLD
Added passing debug zebin to SLD.
Added support for .const.data.strings section in debug zebin creation.
Refactored debug zebin creation code.

Resolves: NEO-6246
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-18 11:38:23 +01:00
Artur Harasimiuk 35f135bbc8 compiler cache to store input into separate file
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-11-16 17:23:17 +01:00
Bartosz Dunajski 1f2aa82c5b Remove UNUSED_VARIABLE macro
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-22 18:56:33 +02:00
Bartosz Dunajski d34ef3170a Remove CPP_ATTRIBUTE_FALLTHROUGH macro
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-22 17:27:57 +02:00
Filip Hazubski 28b37aea72 Correct handling unique_ptr in functions
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-10-21 18:17:14 +02:00
Mateusz Jablonski 5a7d14398c Remove redundant mutex lock
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-21 14:57:07 +02:00
Artur Harasimiuk 091b3ac4f6 cpu_info refactor
Related-To: NEO-5853
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-10-14 17:55:24 +02:00
Mateusz Jablonski ec1e39bab8 Move OCL specific part of FileLogger to ClFileLogger
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-11 23:55:08 +02:00
Bartosz Dunajski 5560663b01 Revert "Disabled forced cross engine synchronization on single queue"
This reverts commit 4b5432967eb9f484a491323b6766efe14929c5e9.

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-06 17:49:48 +02:00
Bartosz Dunajski 50bd8b5f19 Disabled forced cross engine synchronization on single queue
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-01 13:09:33 +02:00
Artur Harasimiuk a63b9b1273 move common files to shared/
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-27 11:10:20 +02:00
Maciej Dziuban c04f8e5e5b Pass copy engines to waitUntilComplete in OpenCL command queue
Related-To: NEO-6057
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-09-24 14:11:44 +02:00
Artur Harasimiuk 895e9e5116 initial Neo enabling on architectures other than x86
Related-To: NEO-6011
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-14 09:14:52 +02:00
Jaime Arteaga 5c236a62fd Changes to SW tags
Add SW tags to synchronization points
Add ID sequence numbers
Add new allocation type

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-08-18 01:51:37 +02:00
Mateusz Jablonski f5dca9e14c Prevent double-free in StackVec's move-assignment operator
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-07-23 11:52:05 +02:00
Bartosz Dunajski 31250b343f TSP: Move packetsUsed member out of GraphicsAllocation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-07-22 17:04:40 +02:00
Kamil Kopryk aa70ad0aee Simplify code
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2021-07-22 14:58:37 +02:00
Bartosz Dunajski e1f42c2ae1 Remove TSP atomic dependency tracking
This reverts commit d17668f023bee409ee68e766bbc7d5f16ce8d52b.

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-23 16:59:41 +02:00
Bartosz Dunajski 2e97aeccfd Revert TSP changes
This commit reverts:
a1d2bdc76666059653c79fe39a26113ce47c632a,
71a115129c1698ff15305fd0ea3828cba861be47,
e1a9087a466bfba54d84a64247e6596092034a91.

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-21 12:44:12 +02:00
Young Jin Yoon a1036ecc75 Fix alignment to be based on starting address
Related-To: LOCI-2342
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2021-06-17 19:08:08 +02:00
Bartosz Dunajski 5af793ddc6 Remove TSP implicit dependency tracking logic
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-16 08:47:00 +02:00
Bartosz Dunajski 080b1e2f66 Remove redundant TSP completion tracking logic
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-15 17:29:19 +02:00
Bartosz Dunajski 2d55916003 Disable atomic dependency tracking for TSP
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-15 15:03:57 +02:00
Milczarek, Slawomir 165194bf85 Add merge condition for freed chunks in heap allocator
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-05-27 16:26:54 +02:00
Maciej Dziuban 33e8f73775 Enable custom allocation alignments on Linux
Related-To: NEO-5750
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-05-24 12:56:51 +02:00
lgotszal 3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Bartosz Dunajski 9c5dee54dc Fix root device residency for TagNode
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-17 14:51:23 +02:00
Bartosz Dunajski e53202e96b TagAllocator to accept multiple root devices
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-14 09:27:16 +02:00
Maciej Dziuban 32025efafb Enhance HeapAllocator with custom alignments
Related-To: NEO-5750
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-05-07 21:43:11 +02:00
Zbigniew Zdanowicz e0b5f2f7f7 Add new IO functions
Related-To: NEO-5718

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-19 16:32:33 +02:00
Zbigniew Zdanowicz 97505aebb6 Change default number of iterations in wait function
Related-To: NEO-4759

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-01 13:09:08 +02:00
Zbigniew Zdanowicz b9ed7de40a Parametrize wait operation
Related-To: NEO-4759


Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-03-31 15:12:59 +02:00
Bartosz Dunajski 0bc04f3c31 Refactor TimestampPackets class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-29 10:26:32 +02:00
Bartosz Dunajski 5a50ad098c Refactor TagAllocator
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-26 15:16:56 +01:00
Filip Hazubski 9a8125cdb0 Correct formatting
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-03-16 10:29:41 +01:00
Konstanty Misiak 88a1593913 Add software tags
Related-To: NEO-344

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2021-03-15 15:51:08 +01:00
Mateusz Jablonski 35064c3dea Allow for hex input in file with debug keys
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-02-26 16:04:26 +01:00
Mateusz Hoppe 06bcc67e38 Clean log file from incorrect entries
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-15 13:05:29 +01:00
Slawomir Milczarek 2a1069eda2 Configure 2MB alignment for allocations on standard heap 64k
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-22 11:56:33 +01:00
Igor Venevtsev cb13a5184d Check for supported CPU VA size in GfxPartition initialization
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-01-14 16:55:59 +01:00
Mateusz Jablonski 5a5ad64f5d Ocloc compile: support gen families exposed in help
fix typo in method name

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-01-11 19:11:56 +01:00
Igor Venevtsev 92f067b9aa Add CpuInfo::isCpuFlagPresent() method
Related-To: NEO-5276

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-01-05 14:23:08 +01:00
Mateusz Jablonski 7c086c9fb4 Use StackVec instead of std::vector in ClDeviceVector
Related-To: NEO-5001
Change-Id: Icab72b5be9f32abf10efd93614768b256aa2ac2c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-16 17:51:40 +02:00
Filip Hazubski 34176a8ea9 Correct formatting
Change-Id: I592986cb67099136a75d12ad3bc9729c7f85738b
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-16 10:46:26 +02:00
Bartosz Dunajski 44a6d70ced Dont use Packets without profiling data to calculate kernel duration
Change-Id: I710348835f8884a3b244502f53ff4e4980441654
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-29 17:09:01 +02:00
Jaroslaw Chodor 39f42b20ba Require OpenCLDriverName in DeviceRegistryPath
Change-Id: I93a8ca95082f6ddb48adffe33145568f32d77418
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-24 08:21:20 +02:00
Pawel Cieslak fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Jaroslaw Chodor 321f649854 Zebin support
Change-Id: I1e426ee2c5174fd0a4c51c1644cda467c2b88881
2020-08-07 11:48:41 +02:00
Jaroslaw Chodor d65cdab453 Zebin - yaml parser
Change-Id: If8b5bcd68b7d39bfd3fb53b619f5de973b059bff
2020-07-30 07:26:44 +02:00
Bartosz Dunajski a465d5c753 Dont clear dependencies on enqueue engine switch
Change-Id: Ic6c6f202052c7024c7997de882f0079eead07303
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-07 15:51:00 +02:00
Filip Hazubski 29821b5a25 Update SettingsFileReader
Improve parsing to be less strict.

Change-Id: I123a98bb8341b007c8fe6e7556ebaa113d1f076e
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-07-01 15:07:35 +02:00
Andrzej Swierczynski 351af1d3de Correct tests: pass device bitfield to allocation properties [3/n]
Related-To: NEO-4722

Change-Id: Id1459e6a2ebd71e410193cfbdfa2cfa44edf3b1d
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-06-30 21:13:25 +02:00
Filip Hazubski 851e894ab6 Update device caps initialization
Change-Id: I2488b2a07463efefaba03ff1d979cd7034f54136
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-14 19:18:39 +02:00
Mateusz Hoppe d55a0ae5c6 Detect enable program debugging env variable
Resolves: NEO-4713

Change-Id: Id9ce30b84943c4b364f7756a430d58df2614a28b
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-09 15:23:20 +02:00
Igor Venevtsev 397eae86aa Add CPU virtual address size report
Related-To: NEO-4525

Change-Id: I12ff095c07a71acbf2d6dceab04abb99daeaf885
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-06-08 12:28:41 +02:00
Bartosz Dunajski 71bd96ad71 Disallow copying and moving TagNode
Change-Id: I1a350edaff300c68a4a7314ea984382b88288413
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-20 17:45:03 +02:00
Bartosz Dunajski 37a6a900a8 Minor TagAllocator cleanup
Change-Id: I7d7c522e32ddf7eb614714c5e81b5b7b88129165
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-15 11:40:43 +02:00
Bartosz Dunajski 6818e55594 Improve TimestampPacket dependencies handling
Change-Id: Ib38f9db8e7398759c3031af5709ccdfd6a421002
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-04-23 15:18:40 +02:00
Mateusz Jablonski 86a5946b7b Pass device bitfield to TagAllocator
Related-To: NEO-4484
Change-Id: I56602a15d18ff577a97d573eeda51e7866525aa7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-17 10:41:18 +02:00
Lukasz Jobczyk 5a3afcf535 Change atoi to atoll to support 64 bit values
Change-Id: I82d5843c644b2c1e97c3772fd9cc120fb7dd29e8
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-04-14 14:43:59 +02:00
Zbigniew Zdanowicz f096d71a75 Add diagnostic mode to direct submission
Related-To: NEO-4338

Change-Id: Ibcdc1b6a1762827337e4ff5364a972702130195a
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-02 17:50:59 +02:00
Filip Hazubski d0527e1049 Rename memory_constants.h to constants.h
Change-Id: I05b5d20bac12935dc6625b94adc3a03c98c19b49
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-02 14:19:39 +02:00
Lukasz Jobczyk 85ec469bd4 Add support for int64_t registry keys
Resolves: NEO-4505

Change-Id: I583d26a5932193acfd58eac50462ec81cd460d8f
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-31 16:14:44 +02:00
Mateusz Jablonski 441ff1fcdf Don't use the entire std namespace
Change-Id: I2014117a154fb2c1a61af5c31baa228b4fb3dbc2
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-27 19:57:11 +01:00
Zbigniew Zdanowicz 2213b8808f Detect new CPU features using cpuid
Change-Id: Ie82e1ae4d21e758a0b27b59dd130793f6cf7d14f
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-12 07:56:54 +01:00
Jaroslaw Chodor 915b80b1df Introducing kernel descriptor
Change-Id: I4ce6ebf27a81cf14b055817ebfe76d8427e349ab
2020-02-25 00:03:15 +01:00
Mateusz Jablonski 7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00