Commit Graph

995 Commits

Author SHA1 Message Date
Daria Hinz 331f167cfe feature: Add debug flag for setting hw ip version
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7954
2023-05-23 15:32:46 +02:00
Filip Hazubski d234bc970d refactor: Move getMaxNumSamplers function to ProductHelper
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-05-18 09:25:07 +02:00
Cencelewska, Katarzyna 5f22e9eaca fix: don't set Cacheable on xe_hp and later
Related-To: NEO-7194
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-05-18 09:17:32 +02:00
Lukasz Jobczyk 9f755b54ad performance: Bidirectional BCS split implementation for OCL
Related-To: NEO-7877

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-05-16 13:34:18 +02:00
Milczarek, Slawomir 66eb1c9c0a refactor: Add helpers to control kmd migration support on PVC platform
This commit keeps KMD migration still disabled by default on PVC platform.

Related-To: NEO-6465

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-05-15 13:51:19 +02:00
Daria Hinz 1d64b94f30 feature: Match config based on device & rev ID
This change matches the appropriate aot config
for the combination of device ID and revision ID.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7905
2023-05-10 08:22:09 +02:00
Dunajski, Bartosz cfacbbd811 refactor: Simplify OverrideBlitterMocs usage
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-05-09 19:22:57 +02:00
Warchulski, Jaroslaw 7fdf4985a3 feature: add support for cl_khr_external_memory extension
Related-To: NEO-7069
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-05-05 15:51:39 +02:00
Fabian Zwolinski cbce863dc2 refactor: Rename member variables to camelCase 3/n
Additionally enable clang-tidy check for member variables

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-28 16:01:14 +02:00
Kamil Kopryk 171e97e71a feature: introduce release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-04-27 21:38:08 +02:00
Fabian Zwolinski e351a90f81 refactor: Rename member variables to camelCase 2/n
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-04-27 20:39:22 +02:00
Mateusz Jablonski 2f9135a4e6 fix: change type of container with registered engines per root device
use StackVec instead of unordered map
resize container at MemoryManager's creation time

Related-To: NEO-7925
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-27 17:06:42 +02:00
Mateusz Jablonski 32d8a3bc6d fix: store registered engines per root device
in most cases we need to iterate over engines associated to single root device

Related-To: NEO-7925
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-27 10:54:07 +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
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
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
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
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
Mateusz Hoppe 97a8f15fbd fix: cleanup memory leaks in ocloc
- enable memory leaks detection in ocloc tests

Related-To: NEO-7467

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-04-19 13:48:49 +02:00
Kacper Nowak c7adbc2140 Add debug key for dumping ELF to file
Add "DumpZEBin" debug flag. When this flag is enabled, Zebin will be
dumped to a .elf file (with appropiate suffix, in case such file has
been dumped before).
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Related-To: NEO-7895
2023-04-18 20:40:25 +02:00
Maciej Plewka 730578112f Report cl_khr_integer_dot_product extension
Related-To: NEO-6206

With this commit OpenCL will report cl_khr_integer_dot_product extension
in version 2. With all properties enabled.

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-04-14 14:46:18 +02:00
Konstanty Misiak 1f37e69fd2 Refactor of IO functions
Related-To: NEO-4562

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2023-04-13 10:46:47 +02:00
Maciej Plewka 095108edd8 Abort when blit resolve operation dispatched for different tilings
Related-To: NEO-7872, NEO-7873, NEO-7874, NEO-7875

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-04-12 13:17:00 +02:00
Compute-Runtime-Validation 6357ab73ea Revert "Report cl_khr_integer_dot_product extension"
This reverts commit 31983ec043.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-04-06 14:38:45 +02:00
Maciej Plewka 31983ec043 Report cl_khr_integer_dot_product extension
Related-To: NEO-6206

With this commir OpenCL will report cl_khr_integer_dot_product extension
in version 2. With all properties enabled.

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-04-05 20:28:00 +02:00
Zbigniew Zdanowicz 4c7bc2ca98 [feature, perf] add alogrithm to chain command buffers in container
This feature is part of performance improvement to dispatch and start
command buffers as primary batch buffers.
When exhausted command buffer is closed, then reserve exact space for chained
batch buffer start and bind it to the next command buffer.
When closing command buffer, then save ending pointer and
reserve aligned space.

Related-To: NEO-7807

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-04-05 15:49:01 +02:00
Compute-Runtime-Validation c927c46495 Revert "Report cl_khr_integer_dot_product extension"
This reverts commit dbd9b19b35.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-04-05 04:16:29 +02:00
Maciej Plewka dbd9b19b35 Report cl_khr_integer_dot_product extension
Releated-to: NEO-6206

With this commir OpenCL will report cl_khr_integer_dot_product extension
in version 2. With all properties enabled.

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-04-04 11:15:38 +02:00
Mateusz Jablonski ab265bca93 fix blitter programming for media compression on xe hpg platforms
- when destination surface is media compressed then disable compression bit
- rename command field CompressionType->ControlSurfaceType
- program this field only on Xe Hpg platforms

Related-To: NEO-7415
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-31 17:15:28 +02:00
Rafal Maziejuk b9828b543e feature: adjust maxWorkGroupSize value
Related-To: NEO-7357

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
2023-03-28 15:19:52 +02:00
Zbigniew Zdanowicz 6437c1a91e Flush state caches after command list is destroyed
When state base address tracking is enabled and command list use private heaps
then command list at destroy time must calls all compute CSRs that were using
that heap to invalidate state caches.
This allows new command list to reuse the same heap allocation for different
surface states, so before new use cached states are invalidated.

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-28 14:52:30 +02:00
Mateusz Jablonski 5d482ffe87 refactor: add constexpr for tera byte
Related-To: NEO-7665
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-28 12:55:52 +02:00
Dunajski, Bartosz b3c2fa41c5 OCL: Optimize IOQ barriers handling
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-24 12:52:47 +01:00
Zbigniew Zdanowicz 179429b25c Add stateless arguments checker for single kernel
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-23 10:55:15 +01:00
Mateusz Jablonski 5610eae710 refactor: fix typo Barrierl -> Barrier
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-21 15:58:24 +01:00
Cencelewska, Katarzyna a4a296d59f wa: enable wa to add additional dummy blits after blit copy
- reduce number of dummy blits where are not needed
- track if dummy blit required in cmdlist

Related-To: NEO-7450
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-03-17 10:43:00 +01:00
Filip Hazubski 0bee81c0c0 refactor: Move isLinearStoragePreferred function from gfx to product helper
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-03-15 18:51:59 +01:00
Mateusz Jablonski e3c5cbc22f fix ocl/ocloc: expose cl_ext_float_atomics for OCL 2.0+
Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-15 14:48:17 +01:00
Mateusz Jablonski db719b2acb refactor: rename function getExtensions->getDeviceExtensions
Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-15 12:46:46 +01:00
Mateusz Jablonski 028e1bb1b6 fix ocloc: define extensions in one place
unify exposed device extensions between OCL and ocloc

Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-15 11:14:46 +01:00
Dunajski, Bartosz 60741b05aa Add missing struct member initialization
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-15 10:09:05 +01:00
Zbigniew Zdanowicz b6d0a64638 Revert: "compute events select device memory for xe hpg family"
This reverts commit 072233d170.

Resolves: HSD-18028222329

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-03-14 17:18:59 +01:00
Mateusz Jablonski faba16f657 refactor: move extensions string creation to CompilerProductHelper
Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-14 16:27:21 +01:00
Dunajski, Bartosz 477448c097 RelaxedOrdering dispatch for OCL 2/n
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-14 15:48:06 +01:00
Mateusz Jablonski 39eab81c83 refactor: add separate helper for extension support
cl_intel_subgroup_split_matrix_multiply_accumulate

Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-14 15:08:29 +01:00
Mateusz Jablonski 340f932ca2 refactor: move GfxCoreHelper::getExtensions to CompilerProductHelper
Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-14 13:56:19 +01:00
Mateusz Jablonski 483f9fe340 refactor: move extensions support logic to compiler product helper
- cl_intel_subgroup_local_block_io
- cl_intel_dot_accumulate
- cl_intel_create_buffer_with_properties
- cl_khr_subgroup_named_barrier
- cl_intel_subgroup_extended_block_read

Related-To: NEO-7800
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-14 12:09:26 +01:00
Dunajski, Bartosz 97a35debde RelaxedOrdering dispatch for OCL 1/n
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-13 17:37:12 +01:00
Zhenjie Pan 00b675643e fix: missed error handler of SubmissionStatus::FAILED
Related-To: NEO-7802

Signed-off-by: Pan Zhenjie <zhenjie.pan@intel.com>
2023-03-13 16:08:27 +01:00
Raiyan Latif d5c909c9f9 Fix calculation of number of Ray-Tracing stacks
MaxDualSubSlicesSupported is filled inside GT_SYSTEM_INFO
structure when querying the KMD appropriately with the
number of enabled DualSubSlices. However we need to find
the highest index of the last enabled DualSubSlice.

For proper allocation of thread scratch space, allocation
has to be done based on native die config (including unfused
or non-enabled DualSubSlices). Since HW doesn't provide us a
way to know the exact native die config, in SW we need to
allocate RT stacks with enough size based on the last used
DualSubSlice.

The IsDynamicallyPopulated field in GT_SYSTEM_INFO is used to
indicate if system details are populated either via Fuse reg.
or hard-coded. Based on this field's value, we calcuate the
numRtStacks appropriately.

Related-To: LOCI-3954

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2023-03-13 10:48:10 +01:00