Commit Graph

104 Commits

Author SHA1 Message Date
Kamil Kopryk 3be52fa1d0 refactor: Add ult with check if bindless ss is patched correctly
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-12-18 09:30:13 +01:00
Bartosz Dunajski dab4166837 fix: add missing aub polls on sync points
Related-To: HSD-14023925176

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-11-21 09:17:54 +01:00
Szymon Morek d4c1631ac7 performance: don't wait for paging fence on user thread
Related-To: NEO-12197

Currently for new resources user thread must wait before submitting
actual workload. With this commit, instead of waiting on user thread,
request is sent to background ULLS controller thread and additional
semaphore is programmed. ULLS controller will perform actual wait
and signal semaphore when paging fence reaches required value.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 08:30:51 +02:00
Mateusz Hoppe 19b6f5a258 refactor: remove unused file
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-10 15:21:18 +02:00
Mateusz Hoppe f86d4220a5 feature: add bindless samplers support to level zero
- samplers using bindless adressing require patching bindless offsets to
sampler states on kernel's cross thread data

Related-To: NEO-10505

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-03-29 08:07:28 +01:00
Zbigniew Zdanowicz 7418cff844 feature: add debug flags and instrumentation of waitpkg calls
Related-To: NEO-9737

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-12-22 08:34:13 +01:00
Mateusz Jablonski 138fb65401 refactor: correct naming of enum class constants 11/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 14:52:57 +01:00
Maciej Plewka 8c8bb23356 fix: update completion fence for previous ring during switch
Related-To: NEO-9330

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-11-27 12:30:01 +01:00
Maciej Plewka 560b588cbe fix: Update residency fence value after ring buffer switch
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-11-17 20:46:14 +01:00
Katarzyna Cencelewska fbe61cf547 fix: add kmd wait on cpu when wait on paging fence when needed
add storing of throttle hint value for direct submission

Related-To: NEO-9123
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-11-09 19:22:15 +01:00
Zbigniew Zdanowicz 20c3f45998 refactor: add ulls diagnostic flag to select monitor fence input
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-06 15:09:36 +01:00
Zbigniew Zdanowicz e0ce08bb77 fix: detect gpu hang or page fault at direct submission flush to gpu
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-06 14:22:02 +01:00
Dunajski, Bartosz 25195ebc96 fix: capability to write memory chunk in aub/tbx mode
Related-To: GSD-6604

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-19 19:13:11 +02:00
Maciej Bielski 97e7cda912 feature: Optimize intra-module kernel ISA allocations
So far, there is a separate page allocated for each kernel's ISA within
`KernelImmutableData::initialize()`. Apparently the ISA blocks are often
much smaller than a 64k page, which leads to poor memory utilization and
was even observed to cause the device OOM error if a single module has
several keys.

Improve the situation by reusing the parent allocation (owned by the
module instance) for modules, which kernel ISAs can fit together within
a single 64k page. This improves the memory utilization on a single
module level.

Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-09-21 13:55:45 +02:00
Zbigniew Zdanowicz a16d8f7b88 refactor: change direct submission interfaces to accept monitor fence
- unify Linux and Windows default settings
- unify override default code
- correct size estimation when fence is required
- call virtual function once for both estimation and dispatch

Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-09-20 13:17:12 +02:00
Compute-Runtime-Validation 913a926fd4 Revert "feature: Optimize intra-module kernel ISA allocations"
This reverts commit c348831470.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-09-19 14:16:05 +02:00
Maciej Bielski c348831470 feature: Optimize intra-module kernel ISA allocations
So far, there is a separate page allocated for each kernel's ISA within
`KernelImmutableData::initialize()`. Apparently the ISA blocks are often
much smaller than a 64k page, which leads to poor memory utilization and
was even observed to cause the device OOM error if a single module has
several keys.

Improve the situation by reusing the parent allocation (owned by the
module instance) for modules, which kernel ISAs can fit together within
a single 64k page. This improves the memory utilization on a single
module level.

Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-09-19 12:05:09 +02:00
Lukasz Jobczyk fc1f45b630 feature: Dispatch monitor fence from wait
Resolves: NEO-8240
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-08-08 16:42:27 +02:00
Igor Venevtsev e2ad2e8db0 fix: initialize GPU VA for additional synchronization WA
Related-To: NEO-8072

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2023-08-01 11:43:52 +02:00
Lukasz Jobczyk c294ef48ce fix: Make tlb flush os agnostic
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-06-30 14:12:59 +02:00
Mateusz Hoppe 313fb84fda feature: bindless addressing mode support
- allow bindless kernels to execute
- bindless addressing kernels are using private heaps mode
- do not differentiate bindful and bindless surface state base addresses

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-06-19 12:41:03 +02:00
Dunajski, Bartosz e49e245bec Revert "Disable RelaxedOrdering if UpdateTagFromWait is disabled"
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-27 11:47:10 +02:00
Dunajski, Bartosz 151aecc8bd Disable RelaxedOrdering if UpdateTagFromWait is disabled
Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-03-22 18:15:39 +01:00
Warchulski, Jaroslaw 7e7f8b5bc2 Move files from shared/test/unit_test to shared/test/common
unit_test/helpers/debug_helpers.cpp -> common/helpers
unit_test/page_fault_manager/default_asan_options.cpp -> common/page_fault_manag
unit_test/utilities/cpuintrinsics.cpp -> common/utilities
unit_test/memory_manager/deferred_deleter_mt_tests.cpp -> opencl/test/unit_test/
delete: unit_test/mocks/debugger_l0_create.cpp
delete: unit_test/page_fault_manager/default_asan_options.cpp

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-30 12:24:28 +02:00
Krystian Chmielewski 18adbed233 feat(zebin): add thread scheduling mode support
Resolves: NEO-7197

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-08-18 16:10:18 +02:00
Warchulski, Jaroslaw aed890a219 Move files between shared/test/unit_test and /common (fixtures, helpers, mocks)
unit_test/fixtures/mock_aub_center_fixture.h -> common/fixtures
unit_test/helpers/raii_hw_helper.h -> common/helpers
unit_test/helpers/static_size3.h -> common/helpers
unit_test/helpers/ult_limits.h -> common/helpers
unit_test/memory_manager/mock_prefetch_manager.h -> common/memory_manager
common/mocks/mock_aub_stream.h -> unit_test/mocks
common/mocks/mock_csr_simulated_common_hw.h -> unit_test/mocks
common/mocks/mock_direct_submission_diagnostic_collector.h -> unit_test/mocks
common/mocks/mock_lrca_helper.h -> unit_test/mocks
common/mocks/mock_tbx_stream.h -> unit_test/mocks
common/mocks/linux/mock_os_context_linux.h -> unit_test/mocks/linux
common/mocks/windows/mock_wddm_direct_submission.h -> unit_test/mocks/windows

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-11 12:53:19 +02:00
Warchulski, Jaroslaw 54dc2f2000 CMake: don't include shared/test/unit_test when shared tests are skipped 2/n
Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-10 11:19:08 +02:00
Mateusz Hoppe 3cd4114733 Move L0Debugger tests to shared
- change tests to non-parameterized when parameters are not needed

Related-To: NEO-7075

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-06 12:19:03 +02:00
Zbigniew Zdanowicz 1df68ad71f Move command stream tests to shared
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-22 13:00:43 +01:00
Mateusz Jablonski 6e64c24df3 Move mock gmm resource info to shared
Remove allocator_helper.cpp files


Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-12 12:19:35 +02:00
Pawel Cieslak 8a700c5187 Move non-ult shared files to single directory
Add SKIP_SHARED_UNIT_TESTS flag

Related-To: NEO-5201
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2021-02-10 21:03:13 +01:00
Kacper Nowak afbead513d Reuse SS allocations on freeGraphicMemory
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2021-02-09 16:00:42 +01:00
Lukasz Jobczyk 8ed14d0c9f Use ZE_AFFINITY_MASK for neo devices
Resolves: NEO-5438

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-01-29 11:13:29 +01:00
Maciej Plewka 2eaf830aff Fix unmap unalignment part at end of mmap allocation
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-01-29 09:43:58 +01:00
Maciej Plewka 5cf4530748 Munmap unaligned part from mmap
Releated-To: NEO-5397

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-01-28 10:43:38 +01:00
Mateusz Hoppe 5d2ea72db6 Handle relocations from zeBin
Related-To: NEO-5323

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-21 13:16:38 +01:00
Mateusz Hoppe ffb6e955b1 Decode relocations in ELF
Related-To: NEO-4769, NEO-5323

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-19 16:02:25 +01:00
Filip Hazubski 2d033f5dea Update UltDeviceFactory
Use MockMemoryManager by default in UltDeviceFactory.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-01-13 17:22:23 +01:00
Filip Hazubski 90fd102fe5 Update MockDevice
Remove mockMemoryManager and mockCompilerInterface variables.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-01-12 14:44:05 +01:00
Mateusz Hoppe 6f69bd3560 Initialize SIP kernel in Device::create()
Related-To: NEO-4878

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-08 15:46:23 +01:00
Maciej Dziuban ebbd042f1c Add root CSR to engine groups
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2021-01-08 12:35:01 +01:00
Maciej Plewka 3ca77a6cbe Program sba for global bindless heaps
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-01-04 14:23:47 +01:00
Jaime Arteaga 1091a5d78b Extend kernel encoder interface test
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-12-22 10:25:23 +01:00
Slawomir Milczarek 6986d5de0b Add helper functions for memory compression to CSR
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-21 17:43:03 +01:00
Jim Snow 37cd49330c Implement ZE_CACHE_CONFIG_FLAG_LARGE_DATA for zeKernelSetCacheConfig
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2020-12-16 07:00:13 +01:00
Pawel Wilma 9bd0c69913 Add ClearColor allocation support for blitter
Related-To: NEO-5175

Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-12-14 18:22:05 +01:00
Mateusz Hoppe 0747cb80f5 Sip programming changes
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-12-11 15:05:30 +01:00
Jaroslaw Chodor 993ea27e25 Adding platform info for FCL
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2020-12-10 16:31:46 +01:00
Kacper Nowak 4804eca86d Refactoring Level Zero ULTs in order to use standalone spirv builtins
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2020-12-08 09:19:05 +01:00
Mateusz Hoppe 8198a739c8 Refactor Sip Kernel usage
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-12-03 10:43:53 +01:00