Commit Graph

13123 Commits

Author SHA1 Message Date
Diedrich, Kamil 26ca64bb28 Add process safety to cl_cache on Linux
Current flow will be to have one synchronization point
config.file. Read remains unblocking, only write(caching)
operation will be blocking (lock on config.file)

Related-To: NEO-4262

Signed-off-by: Diedrich, Kamil <kamil.diedrich@intel.com>
2023-04-25 17:35:40 +02:00
Milczarek, Slawomir c9fdeb200c [perf] Prefetch of kmd-migrated shared allocation with initial placement on GPU
Related-To: NEO-7646

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-04-25 17:27:33 +02:00
Mateusz Jablonski 06bd405e88 feature: add debug flag to control usage of heap extended for USM Host
Related-To: NEO-7665
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-25 15:39:49 +02:00
Zbigniew Zdanowicz c0fcdef03e performance: remove not needed estimation
Related-To: NEO-7828

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-25 14:47:43 +02:00
Lukasz Jobczyk 1e33d00676 Add early return from isAppendSplitNeeded if size too small
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-04-25 14:40:08 +02:00
Lukasz Jobczyk f509ac3fce Remove UseDrmVirtualEnginesForBcs from CAL config
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-04-25 14:27:31 +02:00
Zbigniew Zdanowicz f451207372 performance: dispatch and chain command list batch buffers as primary
Command list batch buffers should be chained when no dynamic or global preamble
is present in command queue.
Return to command queue, when preamble is required.
Chain last command list to the command queue epilog.
Provide first command list batch buffer to KMD/ULLS when no command queue
preamble.

Related-To: NEO-7807

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-25 13:24:11 +02:00
Fabian Zwolinski 2022592f3d Apply CamelCase for class and struct names 2/2
Additionally change .clang-tidy not to ignore struct names.

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-25 13:10:23 +02:00
Mateusz Jablonski e48bb5ad6a test: add test for drm residency handler in multi root devices case
Related-To: NEO-7920

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-25 12:49:04 +02:00
Mateusz Jablonski a5bc67f51a test: adjust buffer pool alloc tests to use root device 1
Related-To: NEO-7920

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-25 12:13:19 +02:00
Mateusz Jablonski 04afb63717 fix: add missing lock in MapOperationsStorage::getInfoForHostPtr
https://github.com/intel/compute-runtime/issues/640
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-25 10:40:49 +02:00
Grzegorz Choinski 21e8595fef ci: lint revision update
Signed-off-by: Grzegorz Choinski <grzegorz.choinski@intel.com>
2023-04-25 10:12:11 +02:00
Dunajski, Bartosz 6e9257c623 Debug flag to force early exit
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-04-25 09:44:44 +02:00
Krzysztof Gibala 16db7cc890 fix: Add missing checks in multi gpu scenario
- Check allocation root device index during eviction
- Wait for and marked allocation only from the current root device index

Related-To: NEO-7920
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2023-04-24 23:26:28 +02:00
Maciej Bielski d4de925711 refactor: add isKernelIsaAllocationType helper
Preparatory step, the helper will be also used by following changes.

Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-04-24 17:16:11 +02:00
Fabian Zwolinski e2e00413a8 Apply CamelCase for class and struct names
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-24 15:36:27 +02:00
Daria Hinz 856318ccc2 test: Add output capture to ULT
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2023-04-24 15:17:16 +02:00
Dominik Dabek 6ec044563f feature: enable checking indirect access
Enable for zebin format but not CM kernels.
Use heuristic of simdSize == 1 to detect CM kernels.

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-04-24 14:57:50 +02:00
Milczarek, Slawomir bf778be99e [fix] zeCommandListAppendMemAdvise to clear preferred location correctly
The memadvise with preferred location for kmd-migrated shared allocation
is set to device associated with cmd list by default to migrate data
to lmem on non-atomic gpu page fault as well (for performance reasons).

Related-To: NEO-7252

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-04-24 14:51:49 +02:00
Maciej Bielski 09b111cc97 refactor: improve code reuse and readability
Extract distinct steps as dedicated functions, especially when the code
is duplicated. This eases analysis of the logic and highlights
differences between callers of a common code.

Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-04-24 12:30:01 +02:00
Zbigniew Zdanowicz 09ef0201c6 fix: correctly assign state transition when same command list executed twice
Single command list object can be passed multiple times to the execution
command list.
Not all command list instances might require dynamic preamble, as it depends
what state is before particular command list instance.
Correctly assign the particular instance of command list to state transition.

Related-To: NEO-7828

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-24 11:38:44 +02:00
rcombs fc53bbe183 unified_memory_manager: mark comparison operators as const
This fixes the build on some compilers.

Signed-off-by: rcombs <rcombs@rcombs.me>
2023-04-24 10:47:30 +02:00
Lukasz Jobczyk 853a65aae9 Add PCI barrier implementation
Resolves: NEO-7850

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-04-24 10:33:03 +02:00
Zbigniew Zdanowicz 6c6cf9dd0c performance: correct setting global init for debugger scenarios
Global init flag is useful only for once per context initialization.
Correctly set the flag can save the visits to these once per context
calls.
Debugger programming is active not only when queue type allows it,
but also when commands state is dirty and debugger class available.

Related-To: NEO-7828

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-24 09:42:32 +02:00
Mayank Raghuwanshi b733d56a36 Make calls to igsc from Sysman thread safe
Related-To: LOCI-4325

Signed-off-by: Mayank Raghuwanshi <mayank.raghuwanshi@intel.com>
2023-04-21 15:51:27 +02:00
Pawel Cieslak 10d48dde59 ci: infra update
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2023-04-21 15:39:24 +02:00
Pawel Cieslak c949b70445 ci: infra update
Related-To: NEO-7591
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2023-04-21 12:51:31 +02:00
Daria Hinz a2bc1d82e4 fix: Improved reporting of incorrect device
We want to report unrecognized device only after verifying
all possible variants, including deprecated ones.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7903
2023-04-21 12:33:34 +02:00
Mateusz Jablonski 1a1bd04d4a fix: handle empty print format in case without string map
https://github.com/intel/compute-runtime/issues/635
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-21 09:56:40 +02:00
Kulkarni, Ashwin Kumar c93b084a4b Change return code for APIs with no support in windows
Related-To: LOCI-3863

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2023-04-21 07:28:20 +02:00
Compute-Runtime-Validation d8e4b324ad Revert "refactor: Remove not needed ocloc message"
This reverts commit 86337dc2ee.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-04-21 06:22:03 +02:00
Mateusz Hoppe 44273fcea0 fix: do not remove log file when logging disabled
- initialization of FileLogger always removed log file - this change only
removes old file when logging is enabled in current run

Resolves: NEO-7199

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-04-21 00:44:03 +02:00
Rafal Maziejuk cdd91d64c6 test(ocl): add getProgrammedGrfValue function
Related-To: NEO-7357

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
2023-04-20 21:14:45 +02:00
Daria Hinz 86337dc2ee refactor: Remove not needed ocloc message
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2023-04-20 17:04:55 +02:00
Daria Hinz a9798794b9 refactor: Add new device type to ocloc help
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7903
2023-04-20 16:59:13 +02:00
Andrzej Koska b22f3f0796 Fix for handling incorrect patchSize in patchWithRequiredSize
This fix adds additional size control to patched memory

Related-To: NEO-7760
Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
2023-04-20 16:07:45 +02:00
Kacper Nowak 83e9a148ca Fix: Unify fp16/fp32/fp64 flags across all platforms
Unify fp16/fp32/fp64 across all platforms. The capabilities indicated by
those flags now refer to both emulated and native-supported (HW) ones:

- Global/local atomic load: HW support on all platforms (handled by native
i16 atomic or) for FP16, FP32 and FP64.
- Global/local atomic store: HW support on all platforms (handled by
native i16 atomic exchange) for FP16, FP32 and FP64.
- Global/local atomic compare/exchange: HW support on all platforms
for FP32.
- Global/local atomic min/max: Emulation support on all platforms for
FP64, HW support on all platforms for FP32, HW support on XE+ platforms
and emulation support on all others for FP16.
- Global atomic add: HW support for PVC+ platforms, emulation support on
all other platforms for FP64, HW support on XE+ platforms and emulation
support on all other platforms for FP32.
- Local atomic add: Emulation on all platforms for both FP64 and FP32.

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Related-To: NEO-7734
2023-04-20 15:03:39 +02:00
Fabian Zwolinski 1ddfc9af39 Change class name to CamelCase
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-20 14:28:58 +02:00
Cencelewska, Katarzyna 659109adc6 fix: do not add link engines on integrated gpu
- caps check is not needed when link engines are not available for
product

Related-To: NEO-7886
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-04-20 13:28:20 +02:00
Daria Hinz 2647efc23c feat: Add support for ip version value in ocloc
Ocloc supports passing hw ip version value to -device arg in
the form of major.minor.revision.
This change adds support for directly passed value as uint32_t as well.
Support added for single and fat binary.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7903
2023-04-20 13:20:11 +02:00
Compute-Runtime-Validation 858ed05466 Revert "[fix] zeCommandListAppendMemAdvise to clear preferred location correc...
This reverts commit 63470ed698.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-04-20 11:04:34 +02:00
Cencelewska, Katarzyna ac8ac62c92 fix: add bcs engine type only if engine exist
- check bcs availability before insert to bcsEnginesTypes

Resolves: NEO-7886
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-04-20 09:02:38 +02:00
John Falkowski bf88e4ef08 fix queryTimestampsExp to remove check for subdevice and incorrect packetId
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-04-20 08:24:33 +02:00
Compute-Runtime-Validation ca51e557a2 Revert "Remove default support for DCD"
This reverts commit a3e923e359.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-04-20 04:41:33 +02:00
Mateusz Hoppe da6cb648b1 test: print command queue properties in verbose mode
- in zello_world_gpu

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-04-19 19:51:37 +02:00
Zbigniew Zdanowicz 669665deff performance: primary batch buffer use only on regular command lists
Immediate command list can use internal command queue.
Immediate command list then uses variable start offset and it does not
work with primary batch buffer.

Related-To: NEO-7807

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-19 19:36:51 +02:00
Fabian Zwolinski a3e923e359 Remove default support for DCD
Related-To: NEO-7213
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-19 19:18:48 +02:00
Zbigniew Zdanowicz 21ac5f2835 [perf] transition hw state only once, then dispatch command when needed
Before state transition was done twice, 1st time for estimation, 2nd time for
dispatch.
Now state transitions only during estimation and required state is saved then.
Commands are dispatched only when command list and property are marked to
dispatch.
During regular workload submission transition is performed only once and it
should be benefitial to reduce host overhead.

Related-To: NEO-7828

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-19 16:31:12 +02:00
ocldev aaeb283ca7 igsc revision update
Signed-off-by: ocldev <ocldev@intel.com>
2023-04-19 14:45:12 +02:00
Mateusz Jablonski 688d958fe8 fix: handle single storage USM in gtpin helpers
use GPU address from gpu allocation instead of CPU allocation
check page fault manager presence before migrating to GPU domain

Related-To: NEO-7690
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-19 14:26:25 +02:00