Commit Graph

367 Commits

Author SHA1 Message Date
Mateusz Jablonski 6fc673b0fe fix: correct suggested number of work groups for concurrent kernels on PVC
value depends on CCS count:
- single CCS mode (default) - no limitations
- two CCS mode - 25% available
- four CCS mode - 12.5% available

Related-To: NEO-8377
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-09-14 16:13:54 +02:00
Dunajski, Bartosz 7562842a58 refactor: remove LogicalStateHelper
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-13 10:29:53 +02:00
Dunajski, Bartosz 6648065703 feature: add indirect semaphore mode
Related-To: NEO-8242

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-12 13:15:51 +02:00
Dunajski, Bartosz def3f2e9ad refactor: improve semaphore programming
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-12 11:24:11 +02:00
Filip Hazubski d7db6ac467 feature: Add preferredPlatformName field to RuntimeCapabilityTable
For all of the devices, preferredPlatformName is initialized with
nullptr by default and platform name will be initialized to driver's default
platform name, at the moment this is "Intel(R) OpenCL Graphics".

When Platform is initialized and preferredPlatformName is not nullptr then
Platform name will be set to the value stored in preferredPlatformName.

Add ENABLE_LEGACY_PLATFORM_NAME AIL enum related to added functionality.

Move PlatformInfo to NEO namespace.

Related-To: HSD-22018809561

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-09-12 11:07:14 +02:00
Mateusz Jablonski 1b9d30ca01 refactor: unify logic isPipeControlPriorToNonPipelinedStateCommandsWARequired
accept debug flag for all platforms
cleanup ocl unit tests for xe hpg platforms
remove not needed excludes

Related-To: NEO-8187

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-31 11:35:21 +02:00
Mateusz Jablonski 0df7e3279e refactor: remove not needed logic around DisallowLowQualityFiltering
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-30 15:35:13 +02:00
Mateusz Jablonski cac91dab20 fix: Move PVC device ids to common place
Related-To: NEO-8187
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-25 13:09:19 +02:00
Dominik Dabek 5c5c718af3 performance: detect indirect access in kernel, PVC
Enabling on pvc after patch in igc.

Enabling only for JIT kernels because AOT could have been compiled with
IGC older than required.

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-08-24 02:15:11 +02:00
Fabian Zwolinski 6fca8ee195 refactor: Remove SourceLevelDebugger
Removed:
- SourceLevelDebugger (with tests)
- DebuggerLibrary
- DebuggerLibraryRestore
- debuggerSupported field from hwInfo.capabilityTable
- HasSourceLevelDebuggerSupport matcher
- ExperimentalEnableSourceLevelDebugger debug var
- EnableMockSourceLevelDebugger debug var
- DebuggerOptDisable debug var
- lib_names.h.in file
- third_party/source_level_debugger/igfx_debug_interchange_types.h

Related-To: NEO-7213
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-08-10 11:14:02 +02:00
Mateusz Jablonski 659f7b645f refactor: move methods from CompilerProductHelper to ReleaseHelper
Related-To: NEO-7786
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-02 10:40:48 +02:00
Mateusz Jablonski 02aa4b6acc refactor: unify isMatrixMultiplyAccumulateSupported definition
Related-To: NEO-7786
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-01 14:39:53 +02:00
Mateusz Jablonski 1e95ed33f9 refactor: remove redundant parameter from HardwareInfo ctor
hw ip version is queried from KMD or set based on device id and rev id

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-31 16:12:57 +02:00
Dunajski, Bartosz e1e9907973 feature: debug flag to signal user interrupts.
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-28 18:56:28 +02:00
Mateusz Jablonski f84f22d23c refactor: remove unused isSharedContext variable
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-26 12:14:23 +02:00
Dunajski, Bartosz 31d351cd53 refactor: unify and simplify Drm CSR methods
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-20 11:42:21 +02:00
Dominik Dabek a463a2efc4 performance: update tg dispatch size heuristic
If workgroup dimension x is 1, use y to ajust for divisible by dispatch
size.

Related-To: NEO-7927, GSD-5417

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-07-13 15:29:55 +02:00
Kacper Nowak b908203001 fix: Compile built-ins per release
- Preserve releases on CMake level.
- Instead of generating builtins per platform, generate them per-release
(+ correct naming accordingly).
- Stop using revisions in builtin compilation logic path, as they are
already embedded in release (device ip).
- Remove platform names & revisions from names for generated files
(related to builtins).
- Remove unnecessary code, refactor ULT logic.

Related-To: NEO-7783
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-07-11 16:02:36 +02:00
Dunajski, Bartosz ecb415bf62 feature: reenable RelaxedOrdering
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-28 12:20:17 +02:00
Kamil Kopryk 9d96adc558 fix: change failBuildProgramWithStatefulAccessPreference to false on pvc
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075
2023-06-21 14:44:01 +02:00
Compute-Runtime-Validation c98c9302cc Revert "fix: change failBuildProgramWithStatefulAccessPreference to false on ...
This reverts commit f0520de068.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-06-20 18:26:23 +02:00
Dunajski, Bartosz 46e8c3f5dd fix: reenable RelaxedOrdering for OCL
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-20 13:05:25 +02:00
Dominik Dabek 8976d8b033 fix: disable checking indirects in kernel
Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-06-20 10:50:16 +02:00
Zbigniew Zdanowicz 7aff4e1bf4 performance: add one time context init system fence to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-20 07:25:09 +02:00
Kamil Kopryk f0520de068 fix: change failBuildProgramWithStatefulAccessPreference to false on pvc
Related-To: NEO-6075

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-06-19 16:27:40 +02:00
Lukasz Jobczyk 694e731a01 fix: disable OOOS
Related-To: NEO-7458

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-06-13 14:10:27 +02:00
Kamil Kopryk 52651991c2 feature: don't allow to build program with stateful accesses on PVC
Related-To: NEO-6075
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-06-12 19:31:32 +02:00
Kamil Kopryk 6a0f7afd64 feature: verify stateful information only when binary is generated by IGC
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>

Related-To: NEO-6075

Ngen binaries contain stateful information, however they are
not used in isa on Pvc. Therefore, we can just ignore them.
2023-06-12 11:45:41 +02:00
Jaime Arteaga 09fcfbba6b feature: Disable nonblocking exec support on Xe HPC
When receiving EAGAIN, UMD should retry the submission again.
On scenarios where KMD runs out of ring-space, an error
should be propagated up to the user. Those scenarios are
more rare, but still we will need KMD support in the future
to differentiate those two cases: retry and propagate error to
user, since right now, KMD returns the same error code.

Related-To: NEO-8040

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-06-07 21:01:09 +02:00
Daria Hinz 68b6cfebd2 feature: Add default ip version values to helper
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-8021
2023-06-02 12:10:21 +02:00
Mateusz Jablonski c544004b8e fix: move getProductConfigFromHwInfo to CompilerProductHelper
add tests for default PVC configs

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-29 14:08:52 +02:00
Milczarek, Slawomir 5402e2639f feature: Enable kmd migration by default on PVC platform
Related-To: NEO-6465

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-05-22 15:16:08 +02:00
Compute-Runtime-Validation b4d8d6b447 Revert "feature: Enable kmd migration by default on PVC platform"
This reverts commit eb8e69d2d4.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-05-19 11:03:24 +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
Milczarek, Slawomir eb8e69d2d4 feature: Enable kmd migration by default on PVC platform
Related-To: NEO-6465

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-05-16 16:48:31 +02:00
Compute-Runtime-Validation 2eff2dac0e Revert "feature: Enable kmd migration by default on PVC platform"
This reverts commit 50d831bee0.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-05-16 06:53:52 +02:00
Milczarek, Slawomir 50d831bee0 feature: Enable kmd migration by default on PVC platform
Related-To: NEO-6465

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-05-15 16:51:42 +02:00
Kamil Kopryk e0d3db3d91 fix: improve release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-15 14:30:15 +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
Dominik Dabek 1ec5ae277c feature: enable checking indirect access on pvc
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-05-10 11:38:00 +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
Filip Hazubski 9215d41b85 Revert "feature: Don't allow to build program with stateful accesses on PVC"
This reverts commit 1676c32c78.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-05-02 22:12:40 +02:00
Aravind Gopalakrishnan 1883161e1e fix: Add debug key to Force Tlb flush
Related-To: GSD-4457

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2023-05-01 17:52:22 +02:00
Kamil Kopryk 1676c32c78 feature: Don't allow to build program with stateful accesses on PVC
Related-To: NEO-6075
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-04-28 15:02:13 +02:00
Dominik Dabek c84c7a0c91 performance: adjust thread group dispatch size
adjust thread group dispatch size on pvc if chosen size does not evenly
divide dimension

this is to avoid leftover thread groups

Related-To: NEO-7927

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-04-27 18:24:53 +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
Mateusz Jablonski 51b8dc66a3 fix ocloc/ult: set default PVC device to pvc xt C0
ensure default hw ip version matches the value from helper
change pvc ult execution to revision 3

Related-To: NEO-7738
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-18 13:48:48 +02:00
Compute-Runtime-Validation e79fb5f39b Revert "fix ocloc/ult: set default PVC device id to pvc xt device id"
This reverts commit bd84ba819b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-04-15 11:43:21 +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