Commit Graph

4827 Commits

Author SHA1 Message Date
Jaime Arteaga
09fcfbba6b feature: Disable nonblocking exec support on Xe HPC
When receiving EAGAIN, UMD should retry the submission again.
On scenarios where KMD runs out of ring-space, an error
should be propagated up to the user. Those scenarios are
more rare, but still we will need KMD support in the future
to differentiate those two cases: retry and propagate error to
user, since right now, KMD returns the same error code.

Related-To: NEO-8040

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-06-07 21:01:09 +02:00
Mateusz Jablonski
0c7a36bc8f fix: obtain hw ip version from kmd in wsl mode
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-06-07 15:20:13 +02:00
Dunajski, Bartosz
5fe9d70066 feature: new multitile post sync layout for immediate write [1/n]
No functional changes in this commit. This is prework.

Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-07 13:11:10 +02:00
Zbigniew Zdanowicz
8d983d3e7a performance: add new copy operations to state base address properties
Adding properties to selectively copy properties for surface state,
dynamic state and binding table base addresses.

Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-07 11:34:28 +02:00
Zbigniew Zdanowicz
6036735840 fix: add option to select estimate size for binding table command
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-07 11:25:34 +02:00
Neil R Spruit
ba6d447b4d feature: Support for using Reserved address with multiple mappings
Related-To: LOCI-4381

- Enabled support for customers to use full Virtual reservation range
with multiple physical mappings with additional allocations implicitly
included in residency.
- Buffer Surface state size extended for first allocation to stretch to
the bufferSize requested.

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2023-06-07 03:12:29 +02:00
Fabian Zwolinski
d00345d115 feature: Add ability to specify options per-device in Ocloc
Related-To: NEO-8037
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-06-06 19:33:48 +02:00
Mateusz Hoppe
0844ca0ac8 refactor: cleanup getBindlessMode() usage
- getGlobalBindlessHeapConfiguration() should be used to choose global
alloctor for SSH
- remove not needed and incorrect unit tests
- remove not needed branches
- bindless mode controls bindless compilation only

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-06-06 17:23:13 +02:00
Kamil Kopryk
dadd19e17b fix: init releaseHelper after ipVersion setup
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-06-06 14:22:42 +02:00
Zbigniew Zdanowicz
831363e51b performance: add state compute mode dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-06 13:29:39 +02:00
Kamil Kopryk
b092dd0cf2 fix: call isPrefetchDisablingRequired directly from release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-06-06 09:13:10 +02:00
Kamil Kopryk
ef18464353 refactor: move getProductMaxPreferredSlmSize to release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-06-05 15:16:30 +02:00
Mateusz Hoppe
e64f2d5467 refactor: do not use DeviceFixture in BindlessHeapHelper tests
- bindless heap helper is using GfxPartition heap allocator and assumes
first heap is allocated at the beginning, with heap's base address.
When second BindlessHeapHelper object is created - it does not allocate
heap with base address as the first object has already reserved
address range. This becomes an issue when debug key enabling
BindlessHeapHelper creation is set before setUp().

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-06-05 13:47:25 +02:00
Cencelewska, Katarzyna
baa4ba9c56 fix: set default value of EnableCpuCacheForResources to false
- this flag is affecting only mtl

Related-To: NEO-7194
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-06-05 13:42:56 +02:00
Zbigniew Zdanowicz
b66a2bf32c performance: add front end dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-05 13:04:57 +02:00
Jaime Arteaga
2efd6e547a feature: Add support for chunking in the UMD (1/N)
Read if support for chunking is available in the KMD.
If available, KMD will create a BO with 1 or more chunks,
depending on the chunk size selected.

Related-To: NEO-7695

Sync to
https://github.com/intel-gpu/drm-uapi-helper/releases/tag/v2.0-rc18

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-06-02 23:27:40 +02:00
Fabian Zwolinski
076e0a0fa8 fix: Increase size of reported global memory available on Windows to 98%
Related-To: NEO-7229
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-06-02 14:21:59 +02:00
Bellekallu Rajkiran
3c072a6cd1 fix: WA for VF bar resource allocation post Warm reset
On Warm reset, With default bar size set by bios, VF bar
allocation is getting failed because of bug in pci driver
which impacts SRIOV functionality.

Resize VF bar size for succesful allocation of VF bar
post warm reset.

Related-To: LOCI-4481

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2023-06-02 13:16:34 +02:00
Daria Hinz
68b6cfebd2 feature: Add default ip version values to helper
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-8021
2023-06-02 12:10:21 +02:00
Zbigniew Zdanowicz
cf5100c134 performance: add pipeline select dispatch to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-06-02 10:31:13 +02:00
Warchulski, Jaroslaw
03d9a20559 feature: add debug flag to wait for release memory
Related-To: NEO-6766
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-06-02 09:57:27 +02:00
Mateusz Hoppe
19bb1e334c feature: enable SW exceptions for kernels with assert and debugging
- when debugging is enabled, assert() in gpu kernel will trigger SW
exception

Related-To: NEO-5753

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-06-01 15:31:36 +02:00
Dunajski, Bartosz
808ff8c2e4 refactor: remove unused EncodeDispatchKernelArgs field
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-06-01 10:42:22 +02:00
Cencelewska, Katarzyna
115d6de350 fix: add debug key to verify device state before submit
- new debug key EnableDeviceStateVerification to check device state not
ony in debug mode

Related-To: NEO-7669
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-05-31 14:31:23 +02:00
Compute-Runtime-Validation
9cc7028025 Revert "feature: enable allocating shared usm in heap extended host by default"
This reverts commit 5b178e68e9.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-05-31 09:39:11 +02:00
Mateusz Hoppe
e017ed0be9 feature(zebin): set bindless adressing modes in kernel attributes
- when bindless adressing is set in zeinfo, kernel attributes should
reflect that.

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-05-30 19:17:36 +02:00
Cencelewska, Katarzyna
d2436a8231 fix: add limitations for setting gmm flag Cacheable
- move isCachingOnCpuAvailable to product helper
- isCachingOnCpuAvailable should return false on mtl
- if wsl, skip checking method from product helper

Related-To: NEO-7194
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-05-30 17:04:57 +02:00
Mateusz Jablonski
6f21d133cf fix: extend MemoryInfo class interface to expose single memory region
unify logic of OverrideDrmRegion debug flag

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-30 16:27:42 +02:00
Mateusz Jablonski
61055478d4 fix: adjust scope of disable L3 for debug WA
Related-To: HSD-1609398399
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-30 14:23:16 +02:00
Dunajski, Bartosz
5aeffbf673 refactor: define initial value for TimestampPacket
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-05-30 12:09:05 +02:00
Mateusz Hoppe
1c196b9f3d refactor: change ApiSpecificConfig functions names
- better description of the meaning of functions

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-05-30 09:20:01 +02:00
Mateusz Jablonski
c544004b8e fix: move getProductConfigFromHwInfo to CompilerProductHelper
add tests for default PVC configs

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-29 14:08:52 +02:00
Mateusz Jablonski
5b178e68e9 feature: enable allocating shared usm in heap extended host by default
Related-To: NEO-7665
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-29 11:28:18 +02:00
Katarzyna Cencelewska
6e93dd8068 fix: add check for igc compatibility without checking icbe
Related-To: NEO-7904
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-05-29 10:52:21 +02:00
Dunajski, Bartosz
814de81aca feature: replace in-order sync allocation with TimestampPacket
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-05-29 09:32:35 +02:00
Mateusz Hoppe
f8b375cae5 fix: stop parsing printf buffer after invalid string index
- IGC stores invalid string index at the end of printf buffer,
invalid index is equal to (int32_t)-1 extended to (char*)
- printKernelOutput() should not parse buffer after invalid index was
found to avoid invalid string pointer dereference

Related-To: NEO-5753

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-05-29 09:22:08 +02:00
Cencelewska, Katarzyna
424db8aff8 fix: use helper to calculate gpu timestamp in ns
Resolves: GSD-4385
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-05-26 19:23:54 +02:00
Spruit, Neil R
b589e32c4b fix: Force Close of IPC handles at memFree
Related-To: LOCI-4455

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-05-26 17:09:47 +02:00
Maciej Plewka
4b6194cf0c fix: Use Gmm to map virtual gpu addresses
Related-To: NEO-5842, NEO-7946

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-05-25 15:49:05 +02:00
Kamil Kopryk
ab1b4681cc Revert "fix: call isPrefetchDisablingRequired directly from release helper"
This reverts commit 4ecff31c26.

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-25 15:11:20 +02:00
Joshua Santosh Ranjan
29682a4f8d feature: print global timestamp
Related-To: LOCI-4285

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2023-05-25 09:45:13 +02:00
Jaime Arteaga
37ed03a15c feature: Propagate error from makeResident to caller
Have makeResident return error to the caller, instead of always
SUCCESS. This will allow interfaces like zeContextMakeMemoryResident
to fail properly.

Additionally, change the parsing of MemoryOperationsStatus from
ZE_RESULT_ERROR_OUT_OF_HOST_MEMORY to
ZE_RESULT_ERROR_OUT_OF_DEVICE_MEMORY, since when making resources
resident, it is the device running out of memory, instead of the
host.

Related-To: LOCI-4443

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-05-24 21:08:27 +02:00
Neil R Spruit
ded9d7bff2 feature: Get Peer Allocation with specified base Pointer
Related-To: LOCI-4176

- Given a Base Pointer passed into Get Peer Allocation, then the base
pointer is used in the map of the new allocation to the virtual memory.
- Enables users to use the same pointer for all devices in Peer To Peer.
- Currently unsupported on reserved memory due to mapped and exec
resiedency of Virtual addresses.

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2023-05-24 20:41:20 +02:00
Kamil Kopryk
223eb3e3fc Revert "refactor: move getProductMaxPreferredSlmSize to release helper"
This reverts commit 944c332371.

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-24 17:05:12 +02:00
Kamil Kopryk
f32d62970d fix: remove not needed adjustIpVersionIfNeeded function
Related-To: NEO-7786


Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-24 15:56:27 +02:00
Mateusz Hoppe
7d82b690e4 fix(debugger): use per-context fences for vm_bind operations
- vm_bind with user fence updates fence value independently for every
VM hence with per-context VMs, every context needs its unique fence
address. This prevents 2 contexts from updating value possibly
writing lower value than the one that was already stored

Resolves: NEO-8004

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-05-24 15:17:31 +02:00
Kamil Kopryk
915495ce28 refactor: remove not needed forward declaration
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-23 16:06:16 +02:00
Daria Hinz
331f167cfe feature: Add debug flag for setting hw ip version
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7954
2023-05-23 15:32:46 +02:00
Kamil Kopryk
4ecff31c26 fix: call isPrefetchDisablingRequired directly from release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-23 15:12:39 +02:00
Kamil Kopryk
944c332371 refactor: move getProductMaxPreferredSlmSize to release helper
Related-To: NEO-7786
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-05-23 13:55:17 +02:00