Commit Graph

2061 Commits

Author SHA1 Message Date
Compute-Runtime-Validation
a860adc457 Revert "fix: unblock xekmd recoverable pagefaults vmbind"
This reverts commit cc3e6d5055.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-08-09 14:17:41 +02:00
Szymon Morek
7ebf2e1994 performance: unlock shared mutex during evict
Related-To: NEO-11755

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-09 10:35:12 +02:00
Naklicki, Mateusz
cc3e6d5055 fix: unblock xekmd recoverable pagefaults vmbind
Related-To: HSD-13011898606
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-08-09 09:10:27 +02:00
Maciej Bielski
e434c5595f feature: get HW IP version from drm_xe_gt
Make use of `drm_xe_gt` members to determine HW IP version when running
with XeKMD. Fall back to current values when the respective ioctl call
does not provide relevant information.

Related-To: NEO-10773

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-08-08 12:06:54 +02:00
Bartosz Dunajski
bca8478bd4 feature: use iotclhelper to get num media engines
Related-To: NEO-9777

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-08 09:36:28 +02:00
Bartosz Dunajski
a04cf31110 refactor: improve engine query
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-07 18:22:26 +02:00
Szymon Morek
556a116987 fix: make paging fence address volatile
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 15:09:34 +02:00
Szymon Morek
d7d6996464 performance: initialize timeout params once
Currently this is done per each enqueue
which is not really needed

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 14:35:12 +02:00
Szymon Morek
0d6c506c0b performance: enable wait on paging fence on semaphore
Related-To: NEO-12197

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 10:20:03 +02:00
Szymon Morek
d4c1631ac7 performance: don't wait for paging fence on user thread
Related-To: NEO-12197

Currently for new resources user thread must wait before submitting
actual workload. With this commit, instead of waiting on user thread,
request is sent to background ULLS controller thread and additional
semaphore is programmed. ULLS controller will perform actual wait
and signal semaphore when paging fence reaches required value.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 08:30:51 +02:00
Bartosz Dunajski
24cfd203ab fix: dont download tbx allocations on heapless first device submission
Related-To: HSD-18039476929

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-06 14:03:42 +02:00
shubham kumar
0002eb3fcc feature: adding eu stall support on windows
Related-To: NEO-12174


Signed-off-by: shubham kumar <shubham.kumar@intel.com>
2024-08-06 06:47:11 +02:00
Dominik Dabek
619b47e3d5 fix: disable usm host alloc recycle pre xe-hpg
Related-To: NEO-12182, NEO-12207

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-08-05 14:50:02 +02:00
Dominik Dabek
e9e6cc05e3 fix: mem alloc size tracking safety
Make sure local mem alloc size atomic array is initialized with 0.
Add debug breaks to catch possible overflow on unregistering
allocations.

Related-To: NEO-11356

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-08-05 11:51:17 +02:00
Dominik Dabek
26428d5af3 feature: track used memory by allocations
Track memory used by memory allocations. System and local per device.
Will be used for heuristics in memory pooling.

Related-To: NEO-11356

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-08-02 17:54:34 +02:00
Compute-Runtime-Validation
e27efd701f Revert "fix: correct calculating max subslice space"
This reverts commit 67f2500c03.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-08-02 12:28:13 +02:00
Mateusz Jablonski
67f2500c03 fix: correct calculating max subslice space
computeMaxNeededSubSliceSpace is no longer needed as getHighestEnabledSubSlice
already determines maximum index from all enabled subslices

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-01 16:38:24 +02:00
Mateusz Jablonski
07a11e640f refactor: include xe header in dedicated namespace
avoid redefinition issue in case of integrating multiple xe drm versions

define mock drm xe in inl file to provide xe definitions for mock members

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-01 14:38:20 +02:00
Compute-Runtime-Validation
2d1b263e9a Revert "refactor: remove redundant function computeMaxNeededSubSliceSpace"
This reverts commit c0b96dcd6e.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-08-01 03:54:56 +02:00
Mateusz Jablonski
8edc40adbc fix: populate SliceInfo based on TopologyMap in drm path
pick minimal config in case of multi tile

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-31 15:55:21 +02:00
Mateusz Jablonski
c0b96dcd6e refactor: remove redundant function computeMaxNeededSubSliceSpace
use GfxCoreHelper::getHighestEnabledDualSubSlice instead

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-31 14:50:13 +02:00
Maciej Bielski
790bb84841 refactor: decouple ClosCacheReservation from Drm
The dependency towards `Drm` is unnecessary and only makes testing more
difficult. Instead, dependency towards `IoctlHelper` alone only is
sufficient.

Related-To: NEO-10158
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-31 10:38:35 +02:00
Jack Myers
f5d00b2616 feature: 2d-block-load-transpose query
Implemented device property query API for determining
support capabilities regarding 2d-block-load-tranpose
features for which not all Intel devices support.

Related-To: NEO-11592
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-07-30 18:21:07 +02:00
Mateusz Jablonski
afc1664fce fix: fail wddm initialization when cannot create topology map
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-30 09:35:42 +02:00
Naklicki, Mateusz
d9dec7acfc fix: improve reported flag names for binding process in xe
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-07-29 18:08:13 +02:00
Wenbin Lu
e2f1735cc5 test: use realistic values in topology query tests
Related-To: NEO-9489

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-07-29 16:34:22 +02:00
Dominik Dabek
796edfeeb5 performance: enable host usm alloc recycle
Enable on pre xe2 platforms.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-07-29 14:29:08 +02:00
Mateusz Jablonski
382584067a fix: setup initial l3 bank count before querying topology
Resolves: NEO-12169
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-29 12:24:45 +02:00
Mateusz Jablonski
71f4088a1e fix: correct hw info setting in drm path
add fallback to get max eu per ss from topology if not available in other way

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 17:23:56 +02:00
Mateusz Jablonski
85df385582 fix: ensure system info is queried before querying topology
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 16:03:59 +02:00
Mateusz Jablonski
a168bf2f33 fix: ensure drm topology is queried only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 14:56:41 +02:00
Mateusz Jablonski
7f6c6c6bb9 fix: ensure system info is queried only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 12:42:27 +02:00
Mateusz Jablonski
0cdfa882eb fix: correct setting hw info in drm flow
firstly, setup hw info using product specific functions
secondly, query system info from GuC to setup max values
then, query memory info
then, query engine info as it depends on memory info
then, query topology as it depends on engine info

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 12:20:40 +02:00
Mateusz Jablonski
e24acc6155 fix: ensure memory info is queried before querying engine info
initialization of engine info relies on memory info data

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 09:28:50 +02:00
Mateusz Jablonski
1fa7e14d0b fix: query engine info prior to query topology
don't setup l3 bank count in default gt sys info

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-25 16:17:44 +02:00
Mateusz Jablonski
3d3dff8dc2 fix: ensure engine info is queried only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-25 15:49:37 +02:00
Mateusz Jablonski
ef1075a06a fix: ensure memory info is queried only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-25 15:01:43 +02:00
Mateusz Jablonski
b488799e85 feature: add support for new vm bind flags based on upstream xe kernel
support for DRM_XE_VM_BIND_FLAG_IMMEDIATE and DRM_XE_VM_BIND_FLAG_READONLY

Fixes: #717

Related-To: NEO-10958
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-25 12:43:54 +02:00
Compute-Runtime-Validation
4dc737fc4a Revert "fix: correct setting hw info in drm flow"
This reverts commit 3b2a0983f5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-07-25 05:41:33 +02:00
Mateusz Jablonski
3b2a0983f5 fix: correct setting hw info in drm flow
firstly, setup hw info using product specific functions
secondly, query system info from GuC to setup max values
thirdly, query topology to setup current topology data

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-24 16:18:58 +02:00
Mateusz Jablonski
9632f91ee8 fix: don't override eu count to zero
Related-To: NEO-12012

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-24 14:56:54 +02:00
Maciej Bielski
2165154530 feature: add support for L3-cache reservation
Resolves: NEO-7849

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-24 10:10:28 +02:00
Wenbin Lu
357a607d22 refactor: correct the naming of some topology-related variables
Related-To: NEO-9489

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-07-24 08:39:12 +02:00
Compute-Runtime-Validation
2116808b8d Revert "fix: correct number of slices based on GuC info"
This reverts commit b6a56bcdde.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-07-23 17:22:31 +02:00
Compute-Runtime-Validation
ae68df3832 Revert "fix: unblock xekmd recoverable pagefaults vmbind"
This reverts commit 8f4472a26c.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-07-23 16:48:15 +02:00
Dominik Dabek
9b3ccf73b7 refactor: host usm recycle
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-07-23 16:20:21 +02:00
Mateusz Hoppe
8a7923c6ee fix: allow fork() after zeInit()
- do not release resources derived from parent process
- zeInit() in child should initilize new driver

Related-To: NEO-11761

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-23 15:31:50 +02:00
Naklicki, Mateusz
8f4472a26c fix: unblock xekmd recoverable pagefaults vmbind
Related-To: HSD-13011898606
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-07-23 12:00:25 +02:00
Mateusz Hoppe
0800ab54f5 refactor: remove redundant getPid()
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-22 22:51:47 +02:00
Szymon Morek
39ec7facee performance: use BCS for transfers if CCS is busy
Related-To: NEO-11501

Also, if device is iGPU, don't use staging buffers
in that case.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-07-22 15:36:26 +02:00