Commit Graph

3710 Commits

Author SHA1 Message Date
Zbigniew Zdanowicz
2b06aa1129 Drop support flags of always supported properties
- stateless mocs is present in all state base address commands
- select GPGPU pipeline is present in all pipeline select commands

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-15 10:11:02 +01:00
Mateusz Jablonski
51887af219 refactor OCL: cleanup after moving multi root device buffers to local mem
remove debug flag AllocateBuffersInLocalMemoryForMultiRootDeviceContexts

Related-To: NEO-5735
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-15 09:41:20 +01:00
Spruit, Neil R
44ec497b1a feature: Allow for Allocating a base address in the heap and grow an allocation
Related-To: LOCI-3871

- Enabled allocation of specified base address in the targeted heap.
- Enabled virtual memory reservations to grow by allocating at the start
of the heap vs the end of the heap.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-02-15 08:13:38 +01:00
Zbigniew Zdanowicz
6b1c5b7eb8 Update state properties only affected by kernel data
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-14 14:56:47 +01:00
Kamil Kopryk
c268b9a853 refactor: rename os_agnostic_product_helper files
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-14 14:51:23 +01:00
Maciej Plewka
74bae6876d refactor make gfx helper methods for pvc and later non specialized
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-02-14 11:00:30 +01:00
Maciej Plewka
b1e8ca5d59 fix make resident dependent multi root device tags
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-02-14 09:58:00 +01:00
Pawel Cieslak
31d68c42e6 fix mismatched-new-delete when using unique_ptr
Related-To: NEO-6511
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2023-02-14 08:07:13 +01:00
Zbigniew Zdanowicz
98b60ba148 Change state tracking interfaces to split properties update
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-13 18:36:21 +01:00
Maciej Plewka
429be6b4cb Disable EUFusion for odd work groups with DPAS on DG2
Related-To: NEO-7495, HSD-14017007475

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-02-13 15:27:49 +01:00
Wrobel, Patryk
4c58eda90d Ensure that BO handle is closed only once
When one process had exported and then opened IPC handle
of memory, then close function was called twice for the
same BO handle. It caused debugBreak() and aborted
an application.

This change allows multiple separate BOs to share one
handle. The last shared handle owner calls close() function.

Related-To: NEO-7200
Signed-off-by: Wrobel, Patryk <patryk.wrobel@intel.com>
2023-02-13 14:42:49 +01:00
Mateusz Jablonski
272427bb1c Feature OCL: allocate multi root device buffers in local memory
Related-To: NEO-5735
Resolves: NEO-7092

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-13 14:30:25 +01:00
Lukasz Jobczyk
7eb91e3b04 Split the L0 BCS split into D2H and H2D
-use separate pair of engines for D2H and H2D transfers

Related-To: NEO-7716

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-13 14:17:39 +01:00
Warchulski, Jaroslaw
5ec9de90ee Cleanup includes 52
Cleaned up files:
level_zero/core/source/driver/driver.h
level_zero/tools/source/sysman/fabric_port/windows/os_fabric_port_imp.h
level_zero/tools/source/sysman/pci/os_pci.h
shared/source/debug_settings/debug_settings_manager.h
shared/source/gmm_helper/page_table_mngr.h
shared/source/gmm_helper/windows/gmm_memory_base.h
shared/source/kernel/kernel_arg_metadata.h
shared/test/common/libult/linux/drm_mock.h
shared/test/unit_test/fixtures/command_container_fixture.h
shared/test/unit_test/fixtures/product_config_fixture.h
shared/test/unit_test/helpers/simd_helper_tests_pvc_and_later.inl
shared/test/unit_test/os_interface/hw_info_config_tests.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-13 11:39:34 +01:00
Dominik Dabek
6b6e112412 revert: disabled deferred deleter on DG2
Related-To: NEO-7532

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-02-13 11:05:24 +01:00
Maciej Plewka
72f33b898d W/A add limitation on preferred slm on some platforms
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>

Related-To: NEO-7323, NEO-7340, HSD-14017341140, HSD-14017348303
2023-02-13 10:42:39 +01:00
Warchulski, Jaroslaw
48ed9f9c92 Cleanup includes 51
Cleaned up files:

shared/source/gen12lp/hw_cmds_base.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-10 21:54:48 +01:00
Kacper Nowak
5fe902c819 feat(AIL): make AIL oneDNN WA platform-independent
If on clCreateProgramWithSource() call we detect a nGen dummy kernel usage,
then enforce fallback to the patchtokens format (only for this kernel).
Extend this logic to all platforms (previously - only for TGL/ICL).
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-02-10 20:49:45 +01:00
Warchulski, Jaroslaw
b224ec947e Cleanup includes 50
Cleaned up files:
shared/source/helpers/hw_info.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-10 20:26:13 +01:00
Krystian Chmielewski
7982e26ae7 feat(ocloc concat): allow device binary
Allow for use of device binary in ocloc concat. Previously only
AR files could be concatenated.
This feature only works for zebin with AOT Product Config note.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2023-02-10 17:45:00 +01:00
Warchulski, Jaroslaw
64f735481d Cleanup includes 48
Cleaned up files:
shared/source/command_container/command_encoder.inl
shared/source/os_interface/hw_info_config.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-10 17:23:02 +01:00
Warchulski, Jaroslaw
a2e6a8284b Cleanup includes 47
Cleaned up files:
level_zero/tools/source/debug/windows/debug_session.h
level_zero/tools/source/sysman/memory/windows/os_memory_imp.h
level_zero/tools/source/sysman/windows/kmd_sys_manager.h
opencl/test/unit_test/aub_tests/command_stream/copy_engine_aub_tests_xehp_and
shared/source/command_container/command_encoder.inl
shared/source/command_stream/command_stream_receiver_hw_xehp_and_later.inl
shared/source/helpers/blit_commands_helper_base.inl
shared/test/unit_test/image/image_surface_state_fixture.h
shared/test/unit_test/os_interface/windows/os_interface_win_tests.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-10 17:07:30 +01:00
Kacper Nowak
1a4755694e feat(zebin): Add support for SHT_ZEBIN_GTPIN_INFO type section
This commit adds support for decoding SHT_ZEBIN_GTPIN_INFO type
sections. For each section, passed data will be stored in kernel info
(for corresponding kernel).

Related-To: NEO-7689
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-02-10 16:21:59 +01:00
Kacper Nowak
7790e208fd feat(zebin): Add support for ELF section type SHT_NOBITS
This commit adds support for parsing SHT_NOBITS zebin's ELF sections
(containing global/constant zero-initialized data).
- Correction: in CTNI path, do not add related symbol if surface has not
been allocated.

Related-To: NEO-7196
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-02-10 16:17:16 +01:00
Andrzej Koska
52234201bb Narrowing the usDeviceID range for WA
This patch narrows down the scope covered by WA
to G10 machines only

Related-To: NEO-7475
Signed-off-by: Andrzej Koska andrzej.koska@intel.com
2023-02-10 13:26:00 +01:00
Fabian Zwolinski
2843a78bc6 Separate Device and Shared transfer types
This PR gives us the ability to distinguish shared allocation from
device allocation.

Related-To: NEO-7564
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-02-10 10:09:27 +01:00
Jaime Arteaga
f3a8944027 Revert "Enable LUID Extension by Default"
This reverts commit 8b4fe7093d.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-02-09 23:58:28 +01:00
Zbigniew Zdanowicz
1740e1e747 Limit properties update for immediate command list to used in flush task
Related-To: NEO-7701

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-09 17:45:43 +01:00
Zbigniew Zdanowicz
783df81a44 Unify flush task getter implementation of product and core helpers
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-09 16:42:35 +01:00
Maciej Bielski
2778043d67 fix(l0): check for largeGRF when computing maxWorkGroupSize
Sizing context (PVC):
When using LargeGRF (a.k.a GRF256) there are only 4 HW threads per EU
(instead of default 8). Together with SIMD16 that means that there can
be max 64 work-items per EU. With 8 EU per subslice this gives 512
work-items on a single subslice. For correct intra-WG synchronization
all its WIs must be executed on the same subslice (to access the same
SLM, where the synchronization primitives are stored). Thus, with SIMD16
and LargeGRF the work-group size must not exceed 512 (PVC example).

So far `maxWorkGroupSize` is taken solely from a DeviceInfo structure
both in `ModuleTranslationUnit::processUnpackedBinary()` and
`ModuleImp::initialize()`. This method does not take kernel parameters
(LargeGRF) into account. It allows to submit a kernel using LargeGRF
with SIMD16 with the work-group size set to 1024. That leads to a hang.

Fix the `.maxWorkGroupSize` computation so that it takes the kernel
parameters into consideration.

Add new (for discrete platforms >= XeHP) and adapt existing tests, fix
cosmetics by the way.

Similar check for OCL:
https://github.com/intel/compute-runtime/blob/master/opencl/source/comma
nd_queue/enqueue_kernel.h#L130

Related-To: NEO-7684
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-02-08 11:20:52 +01:00
Dominik Dabek
0885379060 Fix typo
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-02-07 17:59:37 +01:00
Lukasz Jobczyk
222992000a Handle barrier correctly in L0 split
Resolves: NEO-7696

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-07 13:31:22 +01:00
Zbigniew Zdanowicz
f2be0ebfc4 Allocate and consume shared heaps atomically
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-07 12:52:54 +01:00
Fabian Zwolinski
ee6eb70f1a Create method to deduce transfer threshold
Related-To: NEO-7564
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-02-07 10:32:24 +01:00
Milczarek, Slawomir
9b7b193b38 Enable recoverable page faults on PVC platform only
Related-To: NEO-6355

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-02-06 14:47:36 +01:00
Lukasz Jobczyk
9f574b6fba Introduce barrier tracking mechanism
Related-To: NEO-7696

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-06 14:29:23 +01:00
Dunajski, Bartosz
6ebdc51fae Dynamic queue size limit in RelaxedOrdering mode
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-02-06 12:02:02 +01:00
Zbigniew Zdanowicz
7e0401d280 Add improvements to heap estimation in level zero command lists
- add estimation parameter for interface descriptor data count
- add to the heap estimation alignment parameter for dynamic and surface heaps
- extend encode interface and implementations to allow child heaps

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-03 20:26:27 +01:00
Daria Hinz
59109a08bb Switch device ID support to product config helper
This commit switches the device ID logic from the deprecated
to the new one, so that if the user passes a hex value to the -device
parameter, ocloc will use the new implementation in the product config
helper. The change also introduces a fix for setting the values in the
correct order to configure the hwIfno correctly.

Signed-off-by: Daria Hinz daria.hinz@intel.com
Related-To: NEO-7487
2023-02-03 16:55:41 +01:00
Mateusz Jablonski
24c5352350 refactor: remove redundant including of compiler_cache.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-03 11:16:31 +01:00
Mateusz Jablonski
1c976f5110 test: move execution environment tests to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-03 11:03:18 +01:00
Kamil Kopryk
cab4b956eb refactor: rename compiler product helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-03 09:03:24 +01:00
Compute-Runtime-Validation
d0c0c60205 Revert "feat(zebin): Add support for ELF section type SHT_NOBITS"
This reverts commit fa03aa9a40.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-02-03 03:44:02 +01:00
Compute-Runtime-Validation
606a900080 Revert "Disable EUFusion for odd work groups with DPAS on DG2"
This reverts commit 017d66a469.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-02-03 02:45:21 +01:00
Jaime Arteaga
51d767daea refactor: Add IPC memory data
Refactor structure and add field to pass USM memory type.

To maintain backwards compatibility with current applications,
pass 0 as type for device allocations, and 1 for host
allocations.

Related-To: LOCI-3771

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-02-02 20:20:31 +01:00
Lukasz Jobczyk
5a613405c6 Make EmbeddedStorageRegistry ctor protected
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-02 16:28:54 +01:00
Kacper Nowak
fa03aa9a40 feat(zebin): Add support for ELF section type SHT_NOBITS
This commit adds support for parsing SHT_NOBITS zebin's ELF sections
(containing global/constant zero-initialized data).

Related-To: NEO-7196
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-02-02 14:54:51 +01:00
Dunajski, Bartosz
31154dc20b Create OS agnostic OSTime in AUB/TBX mode
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-02-02 14:35:26 +01:00
Zbigniew Zdanowicz
5097ef4825 Change dispatch kernel interface to provide already prepared heap objects
Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-02 14:08:43 +01:00
Jaime Arteaga
401344137c fix: Correctly set UUID for non-multi-tile archs
Use getSubDevicesCount() from hwInfo to determine whether device
is root or not, instead of isSubDevice(), since the former does not
change with the affinity mask.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-02-02 14:00:42 +01:00