Commit Graph

993 Commits

Author SHA1 Message Date
Lukasz Jobczyk
e870643c41 Adapt direct submission controller to implicit scaling
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-18 18:33:36 +01:00
Fabian Zwolinski
726b676983 Remove DrmMockImpl and use DrmMock instead
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-18 15:45:48 +01:00
Mateusz Jablonski
14acaf677d Move tests to shared
memory manager allocate in device pool
storage info

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-17 11:20:18 +01:00
Joshua Santosh Ranjan
05a150f49f L0 Core Add Support For pci_speed_ext
This patch adds support for reading PCI bandwidth, generation
and linkwidth information from sysfs nodes for the linux
platform.

Related-To: LOCI-2969

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-03-16 22:47:59 +01:00
Filip Hazubski
35d9d9e18c Do not force resetting SCM properties
Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-16 14:16:45 +01:00
Fabian Zwoliński
08d1af76c3 Revert "Remove DrmMockImpl class and use DrmMock instead"
This reverts commit 4ccbbfa41476ecccdee181b4e6b2e72eed5eaab1.
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-16 13:56:14 +01:00
Filip Hazubski
ef3dffca33 Remove unused function parameter
Remove parameter requiredThreadArbitrationPolicy
from PreambleHelper::programPreamble function.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-16 13:16:13 +01:00
Kacper Nowak
86434e485d Move PATCH_TOKEN_GLOBAL_HOST_ACCESS_TABLE to kernel scope tokens
This commit moves patch token with global host access table to the
kernel scope from the program scope.

Related-To: NEO-6734
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-03-16 12:58:25 +01:00
Maciej Bielski
a71b88fefb PageFaultHandler: speedup UM allocations lookup
Add a per-instance SVMAllocsManager::nonGpuDomainAllocs container for
all allocations to be removed in
moveAllocationsWithinUMAllocsManagerToGpuDomain. This approach replaces
the current iterative search and performs the task faster.

Add 7 new unit-tests to verify the functionality related to
nonGpuDomainAllocs container, both in expected and unexpected/synthetic
scenarios.

For UTs replace a dummy unifiedMemoryManager pointer with a pointer to
an instace of SVMAllocsManager, otherwise a SegFault error is thrown at
the end of tests.

Perform overall cleanup in related tests implementation, includes but
not limited to removal of:

- givenInitialPlacementGpu\
WhenMovingToGpuDomainThenFirstAccessDoesNotInvokeTransfer

As it is fully covered by:

givenAllocationMovedToGpuDomain\
WhenVerifyingPagefaultThenAllocationIsMovedToCpuDomain

- givenInitialPlacementGpu\
WhenVerifyingPagefaultThenFirstAccessDoesNotInvokeTransfer

As it is fully covered by:

givenTbxAndnitialPlacementGpu\
WhenVerifyingPagefaultThenMemoryIsUnprotectedOnly

Finally, reduce code duplication where possible.

Related-To: NEO-6658
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2022-03-16 11:18:24 +01:00
Filip Hazubski
cd95572443 Reuse common logic of programming SCM fields for gen 9 and gen 11
Logic related to programming non coherent and thread arbitration policy for
gens 9 and 11 has been moved to EncodeComputeMode object, where similar
logic for gens gen12lp and newer is located.

Functions PreambleHelper::programThreadArbitration and
PreambleHelper::getThreadArbitrationCommandsSize have been removed.

Redundant setForceNonCoherent call has been removed from XE HPG

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-16 10:04:32 +01:00
Filip Hazubski
32b0f7b014 Remove redundant value CsrSizeRequestFlags::numGrfRequiredChanged
Related-To: NEO-5995

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-15 15:08:15 +01:00
Daniel Chabrowski
adc5fb30d7 Fix UB with std::optional deref in tests
Accessing optional value with operator-> when it has no value is an UB.

Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
2022-03-15 13:29:59 +01:00
Kamil Kopryk
8c4b2aafa1 Move test_hw_info_config.cpp to shared unit tests
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6631
2022-03-15 12:36:53 +01:00
Mateusz Jablonski
c7e76ce109 Add support for a new relocation name for implicit args
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-15 12:03:51 +01:00
Kamil Kopryk
a20edd7160 Correct xe_hpc_core files
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6631
2022-03-15 09:28:18 +01:00
Daria Hinz
452050ae40 Refactoring the use of PVC device ids
Replacing the old device id implementation
& clearing PVC XT temporary.

Related-To: NEO-6742
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-03-14 15:54:52 +01:00
Fabian Zwolinski
2e6d8fefa3 Remove DrmMockImpl class and use DrmMock instead
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-11 15:12:11 +01:00
Filip Hazubski
3eab7009ac Move SCM related WAs logic from CSR to EncodeComputeMode
This will help with unifying the logic between APIs and GENs.

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-11 14:00:53 +01:00
Kamil Kopryk
7d6bee26c7 Move pvc helpers to pvc files
Related-To: NEO-6631
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-03-11 13:46:59 +01:00
Michal Mrozek
6b29b03c29 Change default thread arbitration policy on PVC.
New default is round robin after stall.
Resolves: NEO-6731

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-03-11 09:20:53 +01:00
Bartosz Dunajski
c6e27bdc18 Enable prepatcher DirectSubmission WA
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-10 20:23:11 +01:00
Bartosz Dunajski
79fedd59e4 Add BB_START prepatching WA - disabled by default
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-10 17:05:53 +01:00
Krystian Chmielewski
1b4319fdab Update zebin note target metadata
This commit removes ZebinTargetMetadata struct, and uses
ZebinTargetFlags for both target validations: via machine type, and
via intel gt notes.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-03-10 16:47:01 +01:00
Bartosz Dunajski
e24322f266 Debug flag to control MI_ARB_CHECK prefetcher
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-10 12:50:05 +01:00
Compute-Runtime-Validation
41c51df086 Revert "Recycle old command buffers of immediate command lists"
This reverts commit 8f93f4f3ec.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-03-10 09:12:47 +01:00
Patryk Wrobel
835b344968 Add debug flag to disable GPU hang detection
This change introduces the new flag called DisableGpuHangDetection.
By default it is disabled. When someone wants to disable hang checking,
then this flag can be set to true.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-03-09 18:07:42 +01:00
Milczarek, Slawomir
c0b7f05897 Add memory prefetch for kmd migrated shared allocations
This feature is disabled by default, controlled with the knob
AppendMemoryPrefetchForKmdMigratedSharedAllocations

Related-To: NEO-6740

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-03-09 16:02:18 +01:00
Mateusz Jablonski
3e8a6680e2 Allow undefined symbols in symbol table for OCL
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-09 10:32:15 +01:00
Kamil Kopryk
038d1d54fa Correct xe_hpc tests
Related-To: NEO-6631


Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-03-09 09:21:30 +01:00
Zbigniew Zdanowicz
8f93f4f3ec Recycle old command buffers of immediate command lists
Related-To: NEO-6242

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-03-08 14:59:26 +01:00
Filip Hazubski
dd01cff879 Unify logic determining thread arbitration policy value
Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-08 13:14:56 +01:00
Filip Hazubski
80b520bc9b Change ThreadArbitrationPolicy enum type to int32_t
Change ThreadArbitrationPolicy::NotPresent value to -1
Update initial values to ThreadArbitrationPolicy::NotPresent

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-07 20:04:24 +01:00
Daniel Chabrowski
de0361cfa5 Test prelim VM bind, debug
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-07 19:42:41 +01:00
Krystian Chmielewski
439389ae19 Do not resolve external functions when none passed
This commit adds check in Linker::resolveExternalFunctions checking
if external functions are present before trying to resolve dependencies
and adds default values for ExternalFunctionInfo.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-03-07 19:05:17 +01:00
Filip Hazubski
0f54a57910 Update programming STATE_COMPUTE_MODE
Remove function clearComputeModePropertiesIfNeeded.
If a field has to be programmed unconditionally, ignore isDirty flag.

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-07 16:23:59 +01:00
Jaime Arteaga
a010fb3634 Dont close shared handle on imported allocations
Related-To: LOCI-2272

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-03-06 04:35:47 +01:00
Kacper Nowak
c5ff07237b Patchtokens: Add support for querying device globals by host name
This commit enables parsing symbol infos
passed in the PATCH_TOKEN_PROGRAM_SYMBOL_TABLE patchtoken.
Related-To: NEO-6734
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-03-04 14:38:19 +01:00
Krystian Chmielewski
0ccce5a6d7 Zebin: set kernel barriers based on ext funcs
This change allows for modifying kernel's barrier count
based on called external functions metadata passed
via zeInfo section in zebin.

Added parsing external functions metadata.
Added resolving external functions call graph.
Added updating kernel barriers based on called external functions.
Added support for L0 dynamic link.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-03-04 14:21:50 +01:00
Daniel Chabrowski
bae9e6f5b5 Test DRM query, bind, context create
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-04 08:51:37 +01:00
Daniel Chabrowski
5ae968f2fd Test prelim drm memory info
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-03 16:17:22 +01:00
Kacper Nowak
38086029ed Zebin: Add support for querying device globals by host name
This commit adds support for querying global pointers via decorated
names passed in zeInfo.
Related-To: NEO-6734
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-03-03 13:13:22 +01:00
Michal Mrozek
721c59d3d5 Move to StackVec for timestamp packet container.
Do not use std::vector in hot path.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-03-03 10:34:06 +01:00
Neil R Spruit
fc11701422 LLVM IR removed from Compiler Link
Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2022-03-02 17:25:36 +01:00
Bartosz Dunajski
927bbe9ee9 Disable DirectSubmission in aub/tbx mode
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-01 11:00:42 +01:00
John Falkowski
22ed1be1a3 Add checks for mmap and getSpace
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2022-02-28 20:57:29 +01:00
Konstanty Misiak
cf1bc3a2ba Disable EU fusion based on kernel properties from compiler
Related-To: NEO-6633

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2022-02-28 18:50:38 +01:00
Milczarek, Slawomir
13bc2300e1 Add mock function to check for page fault support
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-02-28 18:36:31 +01:00
Daniel Chabrowski
ca7d47598a Reintroduce prelim DRM debug support
It was verified that the issue existed before the failing commit.

Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-28 18:25:57 +01:00
Daniel Chabrowski
d603bb2f34 Revert "Prelim DRM debug support"
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591

This reverts commit 5e021be0cd.
2022-02-25 18:33:11 +01:00
Mateusz Jablonski
82e3b10c5a Fix typo
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-25 18:10:41 +01:00