Commit Graph

2996 Commits

Author SHA1 Message Date
Maciej Plewka 18ead77e78 fix: Add mutex for ulls controller initializer
Resolves: NEO-7925

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-07-18 12:16:12 +02:00
Artur Harasimiuk 260003caa8 refactor: remove unused code
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2023-07-18 11:00:25 +02:00
Katarzyna Cencelewska 33a5dd486b refactor: remove not needed arguments in adjustGpuPtrToHostAddressSpace
- add also tests to confirm that proper alignment is applied

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-07-18 08:41:59 +02:00
Mateusz Jablonski 0c6d2ebaf3 refactor: remove default argument in SettingsFileReader ctor
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-17 15:06:36 +02:00
Mateusz Jablonski f363463e2d test: move memory manager tests from OCL to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-17 14:53:16 +02:00
Compute-Runtime-Validation 204e5fd306 Revert "fix: Remove tlb flush from DG2 and MTL"
This reverts commit 8ef4629e50.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-15 04:53:37 +02:00
Katarzyna Cencelewska d74bba95c4 fix: use proper gpu ptr when 32 bit
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-07-14 11:00:40 +02:00
Lukasz Jobczyk 8ef4629e50 fix: Remove tlb flush from DG2 and MTL
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-07-14 10:25:03 +02:00
Lukasz Jobczyk f370b8f56a fix: Remove alignment condition for tlb flush
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-07-14 10:19:12 +02:00
Maciej Bielski c7a971a28f feature: add optional onChunkFree callback to AbstractBuffersPool
Instances returned by `getAllocationsVector()` in some cases cannot be
freed (in the `malloc/new` sense) until the `drain()` function invokes
`allocInUse()` on them. Plus, the `chunksToFree` container operates on
pairs `{offset, size}`, not pointers, so such pair cannot be used to
release allocations either.

Provide an optional callback, which can be implemented by the custom
pool derived from `AbstractBuffersPool`. This callback can be used, for
example, to perform actual release of an allocation related to the
currently processed chunk.

Additionally, provide the `drain()` and `tryFreeFromPoolBuffer()`
functions with pool-independent versions and keep the previous versions
as defaults (for allocators with a single pool). The new versions allow
reusing the code for cases when allocator has multiple pools.

In both cases, there was no such needs so far but it arose when working
on `IsaBuffersAllocator`. The latter is coming with future commits, but
the shared code modifications are extracted as an independent step.

Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-07-13 17:26:51 +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
Lu, Wenbin 4de792cee0 fix: support alignments in host and shared UnifiedMemoryAllocation
Related-To: LOCI-4334

Signed-off-by: Lu, Wenbin <wenbin.lu@intel.com>
2023-07-13 08:48:41 +02:00
Compute-Runtime-Validation 6c9a68340a Revert "feature(zebin): Re-introduce support for validation using PRODUCT_CON...
This reverts commit e466fcd7be.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-13 07:55:32 +02:00
Mateusz Hoppe 9fd7f9cf05 fix: set ImplicitArgs size to size of defined fields
Resolves: NEO-8169

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-07-12 21:30:32 +02:00
Kacper Nowak e466fcd7be feature(zebin): Re-introduce support for validation using PRODUCT_CONFIG value
Related-To: IGC-6300
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-07-12 18:29:35 +02:00
Mateusz Jablonski 16dd1ebd9a fix: add missing nullptr check in adjustRootDeviceEnvironments method
Related-To: NEO-8166
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-12 14:23:17 +02:00
Milczarek, Slawomir a6a0b95344 fix: Cpu page fault manager with control of host ptr eviction
Related-To: NEO-8015

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-07-12 14:13:17 +02:00
Zbigniew Zdanowicz 1c0285a156 fix: correct alignment of per thread scratch size
Related-To: NEO-5288

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-12 12:31:47 +02:00
Young Jin Yoon 40af0dddeb feature: disable chunking when debugger is used
Added if conditions to enable useChunking flag by checking
with ExecutionEnvironment::isDebuggingEnabled.

Related-To: NEO-8164
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2023-07-12 03:26:49 +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
Fabian Zwolinski 1a398c7199 fix: huge host and shared allocation
Related-To: NEO-7229
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-07-11 15:16:50 +02:00
Lukasz Jobczyk 83bd33befc refactor: Add flag to control BCS split for pageable memory
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-07-11 15:12:40 +02:00
Mateusz Jablonski 4e464e9d6f fix: adjust root device indices when filtering root device environments
Related-To: NEO-8166
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-11 13:12:20 +02:00
Zbigniew Zdanowicz 3f7269d401 fix: make sip state programing once for all level zero command queues
Related-To: NEO-7828

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-11 11:34:21 +02:00
Young Jin Yoon 81822e3716 refactor: rename pageSize2Mb to pageSize2M
The previous name "pageSize2Mb" defined in
shared/source/helpers/constant.h is inconsistent to other variable,
i.e. pageSize64k.

Furthermore, it's a bit misleading because the page size is defined in
Megabytes (MB), not in Megabits (Mb).

Related-to: NEO-7695
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2023-07-10 20:12:09 +02:00
Mateusz Hoppe 9f466a9967 test: fix DebugSession ULT
- use size of state save area header when comparing contents

Related-To: NEO-7630

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-07-10 11:11:04 +02:00
Jaime Arteaga 23eeaf816d feature: Add debug keys for chunking allocation and size
Related-to: NEO-7695

New debug keys added:

EnableBOChunking is now a mask
0 = no chunking (default).
1 = shared allocations only
2 = device allocations only
3 = shared and device allocations

MinimalAllocationSizeForChunking sets the minimum allocation
size to apply chunking. Default is 2MB.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-07-07 23:39:43 +02:00
Cencelewska, Katarzyna aa0beb8191 fix: Unify logic calculating threads per work group part 4
- also use helper when checking that is simd1 to have same flow

Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-07-07 15:34:59 +02:00
Compute-Runtime-Validation 9c7950cd22 Revert "feature: add optional onChunkFree callback to AbstractBuffersPool"
This reverts commit b7ecf99abb.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-07 04:31:30 +02:00
Mateusz Jablonski 68909a895a feature: add AIL for selected apps on MTL
- Adobe Photoshop
- Adobe Premiere Pro
- Adobe After Effect

use RCS as a default engine

Related-To: NEO-8049
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-06 22:31:13 +02:00
Mateusz Hoppe 4aba0f0340 feature: global bindless surface state base support
- program global bindless ssba when external allocator used (
UseExternalAllocatorForSshAndDsh)

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-07-06 18:31:49 +02:00
Zbigniew Zdanowicz 8836838c7c performance: add one time context init sip state to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-06 14:25:35 +02:00
Maciej Bielski b7ecf99abb feature: add optional onChunkFree callback to AbstractBuffersPool
Instances returned by `getAllocationsVector()` in some cases cannot be
freed (in the `malloc/new` sense) until the `drain()` function invokes
`allocInUse()` on them. Plus, the `chunksToFree` container operates on
pairs `{offset, size}`, not pointers, so such pair cannot be used to
release allocations either.

Provide an optional callback, which can be implemented by the custom
pool derived from `AbstractBuffersPool`. This callback can be used, for
example, to perform actual release of an allocation related to the
currently processed chunk.

Additionally, provide the `drain()` and `tryFreeFromPoolBuffer()`
functions with pool-independent versions and keep the previous versions
as defaults (for allocators with a single pool). The new versions allow
reusing the code for cases when allocator has multiple pools.

In both cases, there was no such needs so far but it arose when working
on `IsaBuffersAllocator`. The latter is coming with future commits, but
the shared code modifications are extracted as an independent step.

Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2023-07-06 10:38:55 +02:00
Igor Venevtsev eba306c099 fix: properly set systemMemoryForced flag for secondary command buffers
Due to this flag was not properly handled on Windows, command buffer
allocations were never reused in immediate command lists in case of
host secondary buffers. This lead to huge host memory consumption
and performance degradation

Related-To: NEO-8072

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2023-07-05 17:09:15 +02:00
Zbigniew Zdanowicz 59949bc833 performance: add one time context init csr surface to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-05 16:18:21 +02:00
Dominik Dabek f1f0f2410c refactor: remove unused getBaseTimeout
Related-To: GSD-3612

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-07-05 16:12:15 +02:00
Zbigniew Zdanowicz 69d80ee5bc performance: add one time context init preemption mode to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-05 14:06:14 +02:00
Lukasz Jobczyk e70f441f52 fix: Idle gpu before invalidate aux table
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-07-05 13:51:27 +02:00
Zbigniew Zdanowicz 866e3c37ba performance: add implementation of cmdlist immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-05 10:23:16 +02:00
Kacper Nowak 1fba2a162e fix(zebin): Do not use NT_INTELGT_PRODUCT_CONFIG for target device validation
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-07-04 16:22:55 +02:00
Cencelewska, Katarzyna 61f701aba5 fix: Unify logic calculating threads per work group part 3
Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-07-04 15:27:44 +02:00
Cencelewska, Katarzyna 2e17c21728 fix: Unify logic calculating threads per work group part 2
- use calculateNumThreadsPerThreadGroup instead of getThreadsPerWG to
have same flow and proper values of threads per work groups

Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-07-04 10:34:02 +02:00
Zbigniew Zdanowicz e52e4f28f2 fix: correct csr state and command programming
- global stateless mode should save surface state base address
- correctly retrieve scratch offset for front end programming
- do not override general base address value and use indirect heap property

Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-03 15:55:55 +02:00
Kamil Kopryk 3f27b5225c performance: Check if print xe logs is needed before locking
Related-To: NEO-7996
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-07-03 14:01:31 +02:00
Compute-Runtime-Validation 39740da9d1 Revert "fix: Unify logic calculating threads per work group part 2"
This reverts commit 1e8a53bd53.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-02 07:09:14 +02:00
Compute-Runtime-Validation 2d7505c01c Revert "feature: Add pat index programming to gem create ext call"
This reverts commit 6489379508.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-02 05:06:58 +02:00
Mateusz Jablonski c8875e5561 test: add missing expectation of printed error message
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-06-30 16:33:28 +02:00
Mateusz Jablonski 8327a68c9b fix: correct programming preferred slm size for 12.70/12.71 releases
do not exceed 96K slm allocation size

Related-To: HSD-14019148270, HSD-14019142146
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-06-30 14:40:34 +02:00
Cencelewska, Katarzyna 1e8a53bd53 fix: Unify logic calculating threads per work group part 2
- use calculateNumThreadsPerThreadGroup instead of getThreadsPerWG to
have same flow and proper values of threads per work groups

Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-06-30 14:16:08 +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