Commit Graph

171 Commits

Author SHA1 Message Date
Radoslaw Jablonski
54de14a9dc refactor: apply clang-format's InsertBraces rule
Formats code before InsertBraces rule is enabled.

Signed-off-by: Radoslaw Jablonski <radoslaw.jablonski@intel.com>
2025-10-06 15:32:46 +02:00
Fabian Zwoliński
a1c5fa1a13 feature: add pooling of USM global/constant surface
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-09-23 18:24:18 +02:00
Fabian Zwoliński
8cf8fe4f5a fix: use const auto& to avoid unnecessary copies
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-09-15 17:48:57 +02:00
Compute-Runtime-Validation
e2d12e1742 Revert "feature: add pooling of USM global/constant surface"
This reverts commit 68698c9a74.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-09-14 16:26:29 +02:00
Fabian Zwoliński
68698c9a74 feature: add pooling of USM global/constant surface
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-09-12 16:05:52 +02:00
Fabian Zwoliński
a2f60af5c6 fix: change global Var/Const Buffer type to SharedPoolAllocation
This is prep work for the future implementation of pooling these allocations.

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-08-19 17:29:34 +02:00
Jakub Nowacki
c4ab767797 fix: add missing NonCopyableAndNonMovable asserts
Related-To: NEO-15630

Signed-off-by: Jakub Nowacki <jakub.nowacki@intel.com>
2025-08-13 13:13:05 +02:00
Mateusz Hoppe
be483491bf feature: extract indirect access buffer major version from ELF's notes
- use version from ELF to create correct layout of implcit args
Related-To: NEO-15574

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-07-25 14:50:49 +02:00
Mateusz Jablonski
0a347a2d8b refactor: remove not needed code related to vme usage
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-07-24 17:54:51 +02:00
Daniel Bermond
e0362a7c39 build: add missing headers for GCC 15
For using fixed width integer types[1], the `<cstdint>`[2]
C++ header needs to be explicitly included with GCC 15 due
to changes[3] in libstdc++.

For details, see the documentation[4] about porting to GCC 15.

[1] https://en.cppreference.com/w/cpp/types/integer
[2] https://en.cppreference.com/w/cpp/header/cstdint
[3] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=3a817a4a5a6d94da9127af3be9f84
[4] https://gcc.gnu.org/gcc-15/porting_to.html#cxx

Signed-off-by: Daniel Bermond <dbermond@archlinux.org>
2025-05-19 15:31:32 +02:00
Mateusz Hoppe
b03f625f03 feature: limit max LWS based on preferred number of workgroups per ss
- limit max LWS size when SLM and barriers are not used

Related-To: GSD-11112

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-16 20:28:00 +02:00
Szymon Morek
ead0842763 feature: add L0 API to query kernel argument info
Related-To: NEO-14358

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-27 16:43:33 +01:00
Kamil Kopryk
7f607427fa fix: correct dsh generation
Don't use hardcoded sampler state and sampler border color state sizes.

Related-To: NEO-14216

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-03-14 21:18:38 +01:00
Fabian Zwoliński
f5e37e725c Revert "fix: configure ISA Pool params based on productHelper"
This reverts commit bf20ae7ae8.

Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-03-10 22:41:13 +01:00
Fabian Zwoliński
bf20ae7ae8 fix: configure ISA Pool params based on productHelper
When is2MBLocalMemAlignmentEnabled returns true,
increase pool size for builtins from 64k to 2MB.

Additionally, set appropriate alignment for kernel ISA heap allocations.
Additionally, configure isaAllocationPageSize based on productHelper

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-02-20 08:42:35 +01:00
Maciej Plewka
8ba43065c5 fix: handle literal raw strings correctly in printf formater
Related-To: NEO-14138
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-02-19 17:14:54 +01:00
Filip Hazubski
6b6202446b fix: Add asserts to ensure NonCopyable and NonMovable 3/n
Related-To: NEO-14068

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-18 17:16:03 +01:00
Filip Hazubski
4c7900008f refactor: Change wording from NonCopyableOrMovable to NonCopyableAndNonMovable
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-17 14:19:10 +01:00
Kamil Kopryk
568133b690 refactor: adjust code to compile with c++20 3/n
Related-To: NEO-10767
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-01-17 20:33:23 +01:00
Compute-Runtime-Validation
c8cbed8e9b Revert "feature: enable C++20"
This reverts commit 137e004767.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-01-17 02:48:11 +01:00
Kamil Kopryk
137e004767 feature: enable C++20
Related-To: NEO-10767
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-01-16 20:10:15 +01:00
Compute-Runtime-Validation
58707e0cf7 Revert "refactor: migration to std::make_unique C++17"
This reverts commit 4cf685cb7d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-01-09 01:41:36 +01:00
Semenov Herman (Семенов Герман)
4cf685cb7d refactor: migration to std::make_unique C++17
Signed-off-by: Semenov Herman (Семенов Герман) <GermanAizek@yandex.ru>
2025-01-08 17:20:00 +01:00
Zbigniew Zdanowicz
c5ed6bf73c refactor: split sync buffer and region allocation creation code
- split the allocation code from command list or kernel
- allow to call allocation code in all parts of the driver

Related-To: NEO-13350

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-11-29 11:41:39 +01:00
Filip Hazubski
388c7dc591 fix: Update SyncBuffer size calculation
Add a constant to describe minimal size of SyncBuffer object.

Related-To: HSD-18039952263, HSD-18039940553, HSD-18039937640

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-10-03 15:57:24 +02:00
Mateusz Jablonski
5912b43841 refactor: remove dead code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-17 13:41:50 +02:00
Fabian Zwoliński
38e1614f4a fix: create and use new allocation type for syncBuffer
Related-To: NEO-11533
Related-To: HSD-18039788811
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-09-06 14:11:33 +02:00
Dominik Dabek
ad229377b9 fix: disable indirect detection if any stack calls
Don't know if kernels will be initialized in the order needed to check
for indirect accesses in stack calls.

Remove now unused functionPointerWithIndirectAccessExists and reading
this value from zebin.

Related-To: NEO-12235

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-08-07 14:48:58 +02:00
Bartosz Dunajski
5ccfd6f2be fix: add missing AlignLocalMemoryVaTo2MB flag support
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-01 13:54:51 +02:00
Bartosz Dunajski
692def2c79 feature: region group barrier allocation support
Related-To: NEO-11031

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-03 18:34:54 +02:00
Dominik Dabek
79b9e73311 fix: device usm alloc reuse
Do not put into usm reuse if is internal.
Set new isInternalAllocation flag for globals allocations.

Use actual size on device for tracking memory usage.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-05-29 12:18:34 +02:00
Compute-Runtime-Validation
dd55225041 Revert "fix: device usm alloc reuse"
This reverts commit 7cb1819b22.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-05-28 21:19:40 +02:00
Dominik Dabek
7cb1819b22 fix: device usm alloc reuse
Do not put into usm reuse if is internal.
Set new isInternalAllocation flag for globals allocations.

Use actual size on device for tracking memory usage.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-05-27 15:34:05 +02:00
Dominik Dabek
c9758216fc fix(ocl): do not reuse usm for globals export
Allocating global surface is expecting that the usm allocation is zeroed
out. Reusing allocations can be filled with junk data and this caused
errors.

Resolves: HSD-18038551036, HSD-18038551766, HSD-18038551957, HSD-18038552252

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-05-21 14:38:28 +02:00
Dominik Dabek
e0ccf22557 fix: indirect access in external functions
Read indirect_stateless_count in module external functions.

If greater than 0, mark all kernels that have the has_stack_calls flag
set from this module as having indirect accesses.

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-01-18 15:29:41 +01:00
Dominik Dabek
b3b402cad2 feature(zebin): read indirect detection version
Read indirect detection version intel compat notes from zebin.

This is to prepare for enabling indirect access optimization in AOT
built kernels.

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-01-12 14:20:52 +01:00
Mateusz Jablonski
dd1b9d6abc refactor: correct naming of enum class constants 8/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 08:18:18 +01:00
Mateusz Jablonski
27fbdde4c5 refactor: correct naming of unified memory enums
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 15:58:21 +01:00
Mateusz Jablonski
4320f4829a refactor: correct naming of enum class constants 3/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 17:43:50 +01:00
Mateusz Jablonski
b182917d9d refactor: correct naming of allocation types
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 16:23:37 +01:00
Mateusz Jablonski
6849d33326 refactor: remove redundant definitions KB/MB/GB
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-05 08:55:18 +01:00
Mateusz Jablonski
c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Mateusz Jablonski
36194c4e7d refactor: correct variable namings
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-29 23:49:03 +01:00
Mateusz Jablonski
140532f8b6 fix: fix issues with clang-tidy on Windows
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-16 12:30:11 +01:00
Mateusz Jablonski
2ab4aeda85 fix: add static casts to destination type to avoid overflows in multiplication
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-06 14:55:24 +02:00
Mateusz Jablonski
72182c28e9 refactor: add NonCopyableOrMovableClass to classes that don't need copy ctors
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-05 13:11:01 +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 Hoppe
c44b600ec7 fix: assert message printing
- assert buffer has header that needs to be accounted for while parsing
the buffer and reading format strings. currentOffset in Printf Formatter
must not exceed size in header. The offset is relative to the beginning
of buffer, not the "begin" field in header

Resolves: NEO-8237

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-08-04 16:48:59 +02:00
Mateusz Jablonski
4f72835b7d fix: create dedicated class for root device indices to store unique values
remove method to removing duplicates from StackVec as the method
implicitly sorted the vector

Related-To: GSD-4692
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-06-12 22:24:06 +02:00
Mateusz Hoppe
f8b375cae5 fix: stop parsing printf buffer after invalid string index
- IGC stores invalid string index at the end of printf buffer,
invalid index is equal to (int32_t)-1 extended to (char*)
- printKernelOutput() should not parse buffer after invalid index was
found to avoid invalid string pointer dereference

Related-To: NEO-5753

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-05-29 09:22:08 +02:00