Commit Graph

2599 Commits

Author SHA1 Message Date
Konstanty Misiak
3cf5850172 fix(AIL) Make DaVinci Resolve AIL apply to all platforms
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2023-02-17 16:56:51 +01:00
Zbigniew Zdanowicz
bf2072c3ea Add cross regular and intermediate command lists base address state transitions
- updates coming from regular list are updated in csr last sent variables
- all per context and per kernel transitions kept in single place
- state updates from intermediate to regular are set in csr properties
- global atomics support duplicates removed

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-17 16:49:47 +01:00
Kamil Kopryk
ae2ea3f86f refactor: rename product_helper test files 1/n
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-17 14:24:33 +01:00
Zbigniew Zdanowicz
2d6e5c2588 Fix issues in state base address properties tracking
- add correct stateless mocs state update in immediate command lists
- disallow stateless mocs dirty sba command dispatch when sba tracking enabled
- checks support first, only then do the dirty state check in csr

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-02-17 13:38:47 +01:00
Warchulski, Jaroslaw
b485c025d0 Cleanup includes 57
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-17 11:19:59 +01:00
Mateusz Jablonski
498e2183e2 add missing include
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-17 11:09:52 +01:00
Rafal Maziejuk
f7685a93e4 Adjust maxWorkGroupSize value
Related-To: NEO-7357

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
2023-02-17 09:34:15 +01:00
Warchulski, Jaroslaw
0556d543a3 Cleanup includes 56
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-16 14:42:44 +01:00
Warchulski, Jaroslaw
7f705e631a Cleanup includes 55
Cleaned up files:
level_zero/core/test/unit_tests/fixtures/memory_ipc_fixture.h
level_zero/core/test/unit_tests/sources/tracing/test_api_tracing_common.h
opencl/test/unit_test/aub_tests/fixtures/multicontext_aub_fixture.h
opencl/test/unit_test/fixtures/program_fixture.h
opencl/test/unit_test/offline_compiler/environment.h
opencl/test/unit_test/offline_compiler/mock/mock_argument_helper.h
shared/test/common/cmd_parse/cmd_parse_base.inl
shared/test/common/mocks/mock_aub_file_stream.h
shared/test/common/mocks/mock_deferrable_deletion.h
shared/test/common/mocks/windows/mock_gmm_memory_base.h
shared/test/unit_test/encoders/walker_partition_fixture_xehp_and_later.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-16 13:30:20 +01:00
Aravind Gopalakrishnan
d75c4d3ec7 fix: Skip adding device to list if context creation fails
Propogate error codes from ioctl failure properly up the layers
so that we skip exposing bad root devices.

Related-To: NEO-7709

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2023-02-16 11:40:54 +01:00
Mateusz Jablonski
95bea7c92b fix zebin: use alignemnt of 8 when creating debug zebin
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-16 11:23:48 +01:00
Neil Spruit
2aaebddb37 Revert "Heap allocation allow base address and growable addresses"
This reverts commit 44ec497b1a.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-02-15 18:34:40 +01:00
Konstanty Misiak
33426b9cc5 feat(AIL): Enforce patchtokens fallback for applications that require it
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2023-02-15 15:19:50 +01:00
Warchulski, Jaroslaw
89ddfbb83c Cleanup includes 54
Cleaned up files:
level_zero/tools/test/unit_tests/sources/sysman/windows/mock_sysman_fixture.h
shared/test/common/os_interface/windows/wddm_fixture.h
shared/test/unit_test/command_stream/compute_mode_tests.h
shared/test/unit_test/encoders/walker_partition_fixture_xehp_and_later.h
shared/test/unit_test/fixtures/preemption_fixture.h
shared/test/unit_test/helpers/blit_commands_helper_tests.inl
shared/test/unit_test/helpers/simd_helper_tests.inl

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-15 13:59:56 +01:00
Warchulski, Jaroslaw
8c17313c8b Cleanup includes 53
Cleaned up files:
opencl/source/mem_obj/image.inl
shared/offline_compiler/source/decoder/zebin_manipulator.h
shared/source/aub_mem_dump/aub_alloc_dump.h
shared/source/compiler_interface/intermediate_representations.h
shared/source/helpers/blit_commands_helper_base.inl
shared/source/utilities/debug_file_reader.h
shared/source/utilities/software_tags.h
shared/source/xe_hpc_core/hw_cmds_pvc.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-15 13:21:14 +01:00
Jaime Arteaga
07598fb5e0 feature: Affinity mask plus ReturnSubDevicesAsApiDevices
When using ReturnSubDevicesAsApiDevices=1 to have
sub-devices-as-root-devices, then the driver should read the values
passed in the mask as those corresponding to the physical
sub-devices.

For instance, in a dual system with multi-tile device, we would have:

card 0, tile 0
card 0, tile 1
card 1, tile 0
card 1, tile 1

With:
ReturnSubDevicesAsApiDevices=0
ZE_AFFINITY_MASK=0,1

Then all tiles in card 0 and card 1 need to be exposed.

With:
ReturnSubDevicesAsApiDevices=1
ZE_AFFINITY_MASK=0,3

Then card 0 tile 0, and card 1 tile 1 need to be exposed.

Related-To: NEO-7137

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-02-15 12:28:46 +01:00
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
Mateusz Jablonski
5a89a761f5 Fix OCL: always signal usage when migrating memory
multi storage memory migration needs to wait until memory is no longer used

Related-To: NEO-5735
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-14 15:10:02 +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
Lukasz Jobczyk
e6181d7933 Reuse builtin module and init selected builtin on device init
-start async thread at device initialization which initializes selected
builtins and exits
-share module across builtins using same binary

Resolves: NEO-7644

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-13 10:55:57 +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
Kamil Kopryk
2887f2d936 refactor: fix typo - specified
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-10 10:28:32 +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
Compute-Runtime-Validation
526297fa8f Revert "Reuse builtin module and init selected builtin on device init"
This reverts commit 3be46ef645.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-02-09 15:40:38 +01:00
Lukasz Jobczyk
3be46ef645 Reuse builtin module and init selected builtin on device init
-start async thread at device initialization which initializes selected
builtins and exits
-share module across builtins using same binary

Resolves: NEO-7644

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-08 17:04:42 +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
1d675fc145 Add tests for split handling barrier
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-02-07 17:44:51 +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