Commit Graph

554 Commits

Author SHA1 Message Date
Mateusz Jablonski 943ad0e1eb style: skip redundant unique_ptr::get function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-10 13:22:40 +02:00
Krzysztof Gibala 4f1e01d279 Create getGmmHelper function in MemoryManager
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-05-09 16:51:23 +02:00
Krzysztof Gibala 1c366d1ec0 Refactor: Change canonize method accessing point
Accessing canonize method as a member of GmmHelper class object

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-05-09 14:16:31 +02:00
Jaime Arteaga 3f26f45c10 Add support for IPC handles with implicit scaling
When using implicit scaling, device allocations may have
more than one internal allocation created internally. In that case,
a separate dma-buf handle per internal allocation needs to be
exported.

So introduced two driver experimental extensions to export and
import more than one IPC handle:

- zexMemGetIpcHandles
- zexMemOpenIpcHandles

Related-To: LOCI-2919

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-05-09 00:38:17 +02:00
Bartosz Dunajski f8ce86b116 XE_HPC: Fallback path to fix PAT_INDEX programming
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-05-05 15:06:21 +02:00
Bartosz Dunajski 4f7a225baf Set PAT programming support during VmBind support query
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-05-04 16:26:15 +02:00
Mateusz Jablonski ffd1c430b1 feature: use completion fence value from direct submission when available
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-28 15:38:11 +02:00
Krzysztof Gibala 9b778863b4 Store GmmHelper in Gmm class
Store GmmHelper in Gmm class instead of GmmClientContext

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-04-27 15:45:49 +02:00
Naklicki, Mateusz f1574bebb4 Use flag to opt-in for VM_BIND mode
Related-To: NEO-6640
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-04-22 17:11:37 +02:00
Bartosz Dunajski 06fa316a75 Assign pat_index to BO during creation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-21 13:25:13 +02:00
Mateusz Jablonski b5b8762faf refactor direct submission: Pass command stream receiver to ctor
Related-To: NEO-6643

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-19 23:02:55 +02:00
Mateusz Hoppe c9d61840a2 Allocate SBA buffers per HW context
- different physical storage for every HW context
- adds support for debugging with implicit scaling on
- reorganize tests

Relates-To: NEO-6883

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-04-15 10:01:28 +02:00
Dominik Dabek 8d1ad5a4f3 Refactor: use stack vector for root device indices
Stack vector will not cause dynamic allocations in most circumstances
ie. number of root device indices not more than 16

Related-To: NEO-6837

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-04-14 14:05:42 +02:00
Patryk Wrobel 352583b9d9 Detect GPU hang in evictUnusedAllocations()
This change introduces checking of the return value
of wait function in case of blocking version of
evictUnusedAllocations(). Furthermore, it propagates
the error to the callers. It contains also ULTs.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-04-13 15:39:02 +02:00
Slawomir Milczarek 858766c080 Remove unused members and getters in system info
Related-To: NEO-6835

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2022-04-12 10:46:53 +02:00
John Falkowski 789587bacc Return nullptr for gfx alloc mmap error
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2022-04-12 10:08:19 +02:00
Bartosz Dunajski 884d729e4e Improve pat index programming on linux
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-12 08:18:20 +02:00
Compute-Runtime-Validation 667594e8eb Revert "Improve multi storage handling."
This reverts commit 81739c0265.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-04-08 13:07:27 +02:00
Michal Mrozek 81739c0265 Improve multi storage handling.
- color always basing on granularity
- align all chunks to granularity size
- make all chunks equal in size

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-04-08 10:21:34 +02:00
Daniel Chabrowski 4d4ccfd128 Remove cache info base class
There is only one implementation of said class and we don't
even adhere to the interface it provides.

Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-04-07 18:15:57 +02:00
Bartosz Dunajski fc4eaa1894 Refactor passing GlobalFenceAllocation to DirectSubmission
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-07 16:08:07 +02:00
Bartosz Dunajski db9c0d1103 Refactor and enable MI_MEM_FENCE programming for DirectSubmission dispatch
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-07 12:53:56 +02:00
Daniel Chabrowski eaba246464 Test prelim command stream and clos cache
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-04-05 16:48:00 +02:00
Daniel Chabrowski 090a79f3f9 Test local memory DRM allocations
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-04-04 17:30:05 +02:00
Mateusz Jablonski b45ffdb334 Move drm command stream fixture to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-01 15:58:37 +02:00
Mateusz Jablonski 7910567a76 Handle missing tag address in getting completion address
rename test fixture to comply one definition rule

Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-01 15:00:35 +02:00
Mateusz Jablonski 9d502dea25 Refactor waitOnCompletionFence method in DrmMemoryManager
get completion address and value from command stream receiver

Related-To: NEO-6643

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-31 19:30:16 +02:00
Dominik Dabek 308f9ccfff Do not allocate dynamic state heap if not needed
Dynamic state heap is only used for sampler data.

Related-To: NEO-6821

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-31 12:13:13 +02:00
Bartosz Dunajski 68351249d1 Add debug flag to read back command buffer pointer
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-29 13:08:18 +02:00
Milczarek, Slawomir f03f530327 Extend zeCommandListAppendMemoryPrefetch to migrate to associated device
Related-To: NEO-6740

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-03-23 14:21:17 +01:00
Fabian Zwolinski 3d8effcd69 Clean-Up unused code related to GMock
This commit:
- Removes usings e.g. ::testing::Return
- Removes unnecessary gmock inclues
- Replaces Gmock macros (e.g. EXPECT_THAT) with our custom implementations

Related-To: NEO-4941
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-22 16:16:34 +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
Daniel Chabrowski 754efbdaff Cleanup mocks
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-18 11:54:03 +01:00
Daniel Chabrowski ce85cee7eb Test prelim drm residency handler
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-17 12:09:55 +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
Daniel Chabrowski c01f454d42 Test prelim memory manager debug surface
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-11 15:33:44 +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
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
Daniel Chabrowski 10e7b9d5be Test prelim buffer object ext
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-09 12:39:43 +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
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
Lukasz Jobczyk 0634aa3f1b Create resource with given address
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-02-24 17:06:19 +01:00
Daniel Chabrowski 5e021be0cd Prelim DRM debug support
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-22 14:59:07 +01:00
Compute-Runtime-Validation e984760423 Revert "Move and extend local memory DRM allocations"
This reverts commit b84b0015d5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-02-22 08:48:46 +01:00
Daniel Chabrowski b84b0015d5 Move and extend local memory DRM allocations
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-21 16:04:53 +01:00
Mateusz Jablonski 6799ea6119 Move linux device factory tests to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-18 10:15:53 +01:00
Igor Venevtsev 60d6505932 L0 debugger - reports process ENTER/EXIT events for zeCommandQueues
- PROCESS_ENTRY - triggered by first zeCommandQueueCreate()
- PROCESS_EXIT  - triggered by last zeCommandQueueDestroy()

Resolves: NEO-6503

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-02-16 16:28:33 +01:00
Mateusz Hoppe b71a12c252 Set cooperative flag for debuggable contexts during creation
Related-To: NEO-6668

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-02-15 16:00:25 +01:00
Mateusz Jablonski 143f67f2fe Enable vm bind availability based on ioctl helper support
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 15:27:52 +01:00