Commit Graph

653 Commits

Author SHA1 Message Date
Krystian Chmielewski af7cb3ff35 Test closing GEM worker is blocking during cleanup
Added test checking if closing GEM worker during
DRM memory manager clean up is blocking.

Related-To: NEO-6213

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-01-12 12:48:05 +01:00
Filip Hazubski 429fa1fbdd Delay releasing memory in createAllocWithAlignment
When padding memory is needed, store it and release only when
the related allocation is being released.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-01-11 20:02:43 +01:00
Szymon Morek 26a24e8fde Query engine info with distances
If prelim kernel is being used, query distances
and set correctly number of available engines

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-01-10 13:30:26 +01:00
Spruit, Neil R 02f075c541 Power Saving Hint Support for Level Zero in Windows
- Added Functionality to pass ze_power_saving_hint_type_t to zeContextCreate
included in the pNext extensions in ze_context_desc_t.
- Enables handling a hint value 0-100 with 0 being no power savings
and 100 being maximum power savings.
- ZE_RESULT_ERROR_INVALID_ENUMERATION is returned given an invalid hint.

Related-To: LOCI-2567

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2022-01-06 23:56:59 +01:00
Kamil Diedrich 8ec74558ea Temporarily disabling local memory for DG2 in WSL
Forcing system memory pool for all allocations in WSL for DG2
while local memory support is being implemented

Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2022-01-06 11:15:25 +01:00
Fabian Zwolinski 1d48e97649 Remove GMock from MockAubCsr, GmockAubFileStream, AsyncEventsHandlerTests...
GMock Removed from:
- MockAubCsr
- GmockAubFileStream
- AsyncEventsHandlerTests
- AsyncEventsHandlerTests::MyEvent
- MockGmmPageTableMngr
- GmockWddm

Additionally:
- GmockAubFileStream body moved to MockAubFileStream class
- Deleted unused GmockAubFileStream class
- Deleted NiceMocks from AsyncEventsHandlerTests
- Renamed GmockWddm to MockWddm

Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-01-05 14:45:13 +01:00
Szymon Morek 6258575e5e Use queryEngineInfo with prelim ioctls
If prelim kernel is being used, query engines
with prelim ioctls.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-01-04 12:15:04 +01:00
Zbigniew Zdanowicz 0cbc320e57 Move memory fixtures to shared
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-01-03 16:47:02 +01:00
Lukasz Jobczyk 7ab6d2801a Check if direct submission available once
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-31 11:53:29 +01:00
Zbigniew Zdanowicz 2047fc88f9 Move execution environment helper to shared
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-31 11:36:44 +01:00
Szymon Morek 5be9d2d584 Add assignRegionsFromDistances logic
If prelim kernel is being used, use distances
logic to assign memory regions.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-30 17:48:16 +01:00
Lukasz Jobczyk b5ffad2fec Revert "Check if direct submission available once"
This reverts commit 70a7840da3.

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-30 10:31:00 +01:00
Szymon Morek e07b27c0e2 Allow to query memory info with prelim ioctl
If prelims are supported, query memory info with
specific ioctl.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-29 10:21:23 +01:00
Szymon Morek 694046d30e Remove C-style casts when casting to osHandle
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-28 11:11:49 +01:00
Szymon Morek d9f6757378 Change return type from unique_ptr to vector
In some of the drm functions there is a pattern
to store array in unique_ptr and pass it's length
as an argument. This commit simplifies this.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-28 10:33:53 +01:00
Lukasz Jobczyk 70a7840da3 Check if direct submission available once
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-23 18:00:46 +01:00
Zbigniew Zdanowicz b6da6471f2 Add notify parameter to direct submission post sync operations
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-23 17:35:48 +01:00
Szymon Morek 962d98a2d8 Enable MemoryInfo for platforms without local mem
Query for memory regions on all platforms.
Fix createPaddedAllocation when input allocation
was made by KMD

Resolves: NEO-6472

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-23 17:35:18 +01:00
Lukasz Jobczyk 35f6cd00ee Add option to log allocations to std out
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-23 15:45:42 +01:00
Szymon Morek 2647d563c7 Remove i915 structs from MemoryInfo
Use structs defined in ioctl_helper.h instead of
i915 dependent ones to avoid conflicts between
different kernels

Related-To: NEO-6149

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-22 12:46:59 +01:00
Zbigniew Zdanowicz 4176cac845 Move shared mocks to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-21 13:26:59 +01:00
Jaime Arteaga 72d16c7cf2 Add rootDeviceIndex to BO
Related-To: LOCI-2502

This to be able to differentiate when a B0 comes from a shareable handle
and we need to know which device owns it. This is needed when inside
the same process we have more than one active P2P transaction.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-12-20 23:33:04 +01:00
Zbigniew Zdanowicz 7680331b4a Move shared object mocks to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-20 18:48:37 +01:00
Szymon Morek 7a730200ee Move appendDrmContextFlags to drm_neo.cpp
Use flag for direct submission when prelim kernel is used.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-20 17:25:11 +01:00
Lukasz Jobczyk bc58172075 Revert "Enable task count update from wait"
This reverts commit 8db36ddf28d0b85516e0adf77dbfc78000d22146.

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-20 16:53:16 +01:00
Zbigniew Zdanowicz 82096a5472 Add new KMD delay parameter for direct submission
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-17 21:09:37 +01:00
Lukasz Jobczyk 6e5bc0d5ee Enable task count update from wait
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-12-17 15:21:51 +01:00
Szymon Morek 242b08d72b Add advise for atomic and preferred location
If supported, allow atomic and preferred location
advises. Hide this logic under IoctlHelper.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-15 16:02:19 +01:00
Mateusz Jablonski e4bbed49d0 Use full path to include test.h 1/n
fix files in opencl

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-12-15 12:34:34 +01:00
Szymon Morek 601271c92e Fix includes
Add <sys/ioctl.h> include in files with prelims

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-15 11:45:19 +01:00
Szymon Morek 854a77d1cf Move code from drm_query to drm_neo
Move methods to drm_neo.cpp and hide
kernel-specific implementations to IoctlHelper

Related-To: NEO-6510

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-14 19:28:16 +01:00
Igor Venevtsev fe250d99b1 Disable L3 caches for debug on ATS and DG2
Resolves: NEO-6320

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-12-14 13:59:09 +01:00
Filip Hazubski 64aec8dc4e Rename functions
Rename getEngines to getAllEngines
Rename engines to allEngines
Rename getEngineGroups to getRegularEngineGroups
Rename engineGroups to regularEngineGroups

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-13 14:27:02 +01:00
Szymon Morek 98d7258a0b Add prelim ioctls for clos
Add several prelim ioctls related to clos for IoctlHelper

Related-To: NEO-6510

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-10 16:50:29 +01:00
Szymon Morek 5a3fd1dc94 Check i915 version at runtime
Related-To: NEO-6510

Check which prelim version is being used.
Select proper IoctlHelper based on that version.
If no version found, switch to upstream instead.

Source of prelim headers:
https://github.com/intel-gpu/drm-uapi-helper


Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-10 12:22:00 +01:00
Kamil Diedrich b4f4cad6f9 Add ults for overrideGfxPartitionLayoutForWsl function
- move implementation from linux to shared

Related-To: NEO-6391
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-12-09 15:22:51 +01:00
Bartosz Dunajski 4dde9393ad Extend engine checkers to support more engine types
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-09 13:41:25 +01:00
Bartosz Dunajski dfdd3c597a Remove redundant BUFFER_COMPRESSED allocation type
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-07 13:35:49 +01:00
Katarzyna Cencelewska 3979af1dcc Move slice enable to setHwInfoValuesFromConfig
Fix problem with not enabled slices in mode SetCommandStreamReceiver=1

Related-To: NEO-6507
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-12-07 09:59:17 +01:00
Milczarek, Slawomir 88121a6f24 Fixed crash in direct submission dtor
Crash on an attempt to read from tag address when ring is not started

Related-to: NEO-5869

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-12-06 11:56:19 +01:00
Bartosz Dunajski 68aea5bf62 Rename compression flags and helpers
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 18:09:02 +01:00
Bartosz Dunajski 9481d8a88b Compression refactor [2/n]
Dont use allocation type for compression preference

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 08:47:46 +01:00
Bartosz Dunajski 7b55d38e34 Refactor [1/n]: Make compression preference allocation property
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-02 15:24:35 +01:00
Milczarek, Slawomir 133e13b319 Add getter for shared system memory capabilities
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-12-02 12:51:41 +01:00
Kamil Diedrich 5bc98718b9 Add support for device allocation on Windows
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-12-02 12:26:47 +01:00
Filip Hazubski fe08216102 Refactor: Update Drm::createDrmContext
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-01 17:04:09 +01:00
Szymon Morek ce5f9c2214 Rename LocalMemoryHelper to IoctlHelper
Related-To: NEO-6472

This helper class is not used only for local memory.
IoctlHelper is more appropriate.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-12-01 14:34:21 +01:00
Katarzyna Cencelewska fa16cbceb9 Change size calculating for scratch on dg2
Also add proper init for SliceInfo on Linux

Resolves: NEO-6449
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-12-01 12:36:41 +01:00
Szymon Morek e368e6c20b Move free function to DrmMemoryManager
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-11-30 14:55:18 +01:00
Szymon Morek 12777bd758 Move MemoryInfoImpl logic to MemoryInfo
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-11-29 13:13:11 +01:00