Commit Graph

212 Commits

Author SHA1 Message Date
Jim Snow 48ba0554db Allocate RTDispatchGlobals as array-of-structures.
This fixes several bugs in previous (reverted) implementation.
We use correct RTStack pointer offset, and a larger RTStack size.

Related-To: LOCI-2966

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2022-11-07 21:25:32 +01:00
Jim Snow f976c7a313 Revert "Allocate RTDispatchGlobals as unboxed array"
This reverts commit eaa4965ae8.

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2022-10-24 05:16:03 +02:00
Szymon Morek 06e5b1cd42 Early preallocate command buffer to reuse for csr
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-10-13 19:43:38 +02:00
Joshua Santosh Ranjan 6944baaca8 Add check to verify UUID platform support
Related-To: LOCI-3495

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-10-12 01:44:57 +02:00
Jim Snow eaa4965ae8 Allocate RTDispatchGlobals as unboxed array
Previously we used an array-of-pointers approach, but using an
array-of-structures is in some ways simpler.

We also split out the RTStack as a separate allocation.

Related-To: LOCI-2966

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2022-09-28 03:42:14 +02:00
Igor Venevtsev 43676ed02a L0Debug Win: initialize device with empty submission
In case of debuggable context device should be additionally
initialized by early empty submission issue.

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-09-21 12:02:34 +02:00
Mateusz Jablonski cfe51ff2ba Remove not used isSimulation functions
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-09-20 11:01:55 +02:00
Lukasz Jobczyk 3a7f266d66 Enable BCS split in OCL
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-09-08 15:56:30 +02:00
Compute-Runtime-Validation c0ce477f85 Revert "Enable BCS split WA in OCL"
This reverts commit abfcaf1265.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-06 20:42:57 +02:00
Patryk Wrobel 53c127e64c Remove superfluous const_casts
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-09-06 13:34:01 +02:00
Lukasz Jobczyk abfcaf1265 Enable BCS split WA in OCL
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-09-05 13:34:11 +02:00
Lukasz Jobczyk 0d6bef0753 Add BCS split to api specific config
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-09-05 11:13:10 +02:00
Naklicki, Mateusz 54042a191e Implement PauseOnEnqueue for L0
Allow pausing execution before and after enqueuing kernel
using the PauseOnEnqueue and PauseOnGpuMode debug flags.

Related-To: NEO-6570
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-08-26 14:48:58 +02:00
Dunajski, Bartosz 98d776867f Add initial support for KernelArgsBuffer allocation
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-03 20:28:21 +02:00
Jim Snow f4879f064f Allocate per-tile RTDispatchGlobals, handle ray tracing patch tokens.
Related-to: NEO-6711

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2022-07-22 06:29:29 +02:00
Baj, Tomasz b450d3c20b Add cl_khr_device_uuid to extension list
Related-To: NEO-5681

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-07-18 12:28:04 +02:00
Compute-Runtime-Validation f53ae0a50e Revert "Add debug flag for EOT WA"
This reverts commit cf3817e058.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-09 01:21:56 +02:00
Mateusz Jablonski cf3817e058 Add debug flag for EOT WA
EOT WA requires allocating last 64KB of kernel heap and putting EOT
signature at the last 16 bytes of kernel heap

Related-To: NEO-7099
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-07 16:58:24 +02:00
Mateusz Hoppe 5956aea18d Limit header includes from level_zero device.h
- remove including debugger_l0.h from device.h
- add getL0Debugger() to shared NEO Device

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-06 16:41:17 +02:00
Lukasz Jobczyk bcdeeb22b5 Add forward declaration on EngineGroupT
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-07-05 13:05:04 +02:00
Compute-Runtime-Validation b0d4215328 Revert "Use DualSubSliceCount to calculate workgroup size"
This reverts commit 8ea5bbd3b5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-06-28 11:47:11 +02:00
Sebastian Luzynski 8ea5bbd3b5 Use DualSubSliceCount to calculate workgroup size
Related-To: NEO-5719

Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2022-06-27 15:41:47 +02:00
Krzysztof Gibala 21c2f06d72 Remove redundant GmmHelper init in createDeviceImpl
Initialization of GmmHelper is carried out earlier in the
prepareDeviceEnvironments method.

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-15 09:49:51 +02:00
Kamil Diedrich ddd8a08fac Add mechanism to avoid calling gdi calls while process exit
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2022-05-20 11:11:52 +02:00
Daniel Chabrowski 7463e1970b Cleanup headers
Make TUs and headers self-contained, remove unused headers

Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-05-18 11:42:06 +02:00
Katarzyna Cencelewska 96e1eb7467 Move variables baseDieRev and baseDieA0Masked from xe_hpc to pvc
Pvc specific variables should be located in pvc struct

Related-To: NEO-6738
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-05-17 12:19:16 +02:00
Artur Harasimiuk e9be9b64c6 clang-tidy configuration cleanup
Define single .clang-tidy configuration with all used checks and use
NOLINT to selectively silence tool. That way cleanup should be easier.
third_part/ has its own configuration that disables clang-tidy for this
folder.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-11 14:02:04 +02:00
Bartosz Dunajski 192ffa4c26 Add support for allocating RT globals
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-25 17:56:09 +02:00
Raiyan Latif c856899dbb Account for hwInfo when checking for implicit scaling support
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2022-04-12 18:10:38 +02:00
Zbigniew Zdanowicz 9858438121 Limit multiple partition count to compute command lists
Related-To: NEO-6811

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-03-29 07:29:08 +02:00
Compute-Runtime-Validation c8116b713f Revert "Account for hwInfo when checking for implicit scaling support"
This reverts commit f6c5995219.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-03-25 21:41:51 +01:00
Raiyan Latif f6c5995219 Account for hwInfo when checking for implicit scaling support
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2022-03-23 19:16:03 +01:00
Baj, Tomasz 1f7fd45251 Move device UUID from L0 to shared
Related-To: NEO-5681

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-03-23 12:52:24 +01:00
Lukasz Jobczyk f8449fb216 Add round robin engine assign controls
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-14 10:57:20 +01:00
Igor Venevtsev 086a70ca52 Add ForceAllResourcesUncached debug variable
Resolves: NEO-6563

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-02-23 09:43:48 +01:00
Michal Mrozek 91cf5064de Use timestamps reported by KMD.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-02-09 10:03:41 +01:00
Bartosz Dunajski 4b0d986876 Move AllocationType enum out of GraphicsAllocation class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-04 17:49:09 +01:00
Joshua Santosh Ranjan c317cff408 Make BDF method as default for UUID calculation
This patch makes PCIE BDF as the default method for UUID
calculation.

Related-To: LOCI-2909

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-01-31 15:47:21 +01:00
John Falkowski 28345061f0 Update maxMemAlloc for PVC with Implicit Scaling
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2022-01-28 08:50:16 +01:00
Igor Venevtsev d9aae805c7 Do not apply L0 debugger WA (Disable L3 cache) for highest DG2 steppings
Related-To: NEO-6320

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-01-17 13:46:40 +01:00
Joshua Santosh Ranjan 7fc9b2c3dc Implement UUID using pcie bdf
This patch implements the fallback method for Device UUID
using the BDF of the device for all product families.


Related-To: LOCI-2827

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-01-05 23:31:00 +01:00
Dominik Dabek 300a971af3 Use igc interface to get max param size
IGC will be queried for max parameter size at the end of initializing
device caps.

Related-To: NEO-4851

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-12-28 16:10:05 +01:00
Neil R Spruit 64ca4b3456 Allow Explicit RTDispatch args and remove multi free of rtMemoryBackedBuffer
Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2021-12-21 20:09:36 +01:00
Michal Mrozek dc44b13b53 Optimize getRootDeviceIndex.
Virtual functions are not easily optimizable by compiler,
so making this normal function.
This function is called heavily so it needs to be highly optimized.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2021-12-16 11:53:12 +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
Joshua Santosh Ranjan 06be26fd1e Add uuid support using inband information
Added chipset specific uuid retrieving functionality
This is used by zeDeviceGetProperties


Related-To: LOCI-2636

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2021-12-10 08:02:33 +01:00
Jim Snow 2dfb7df63b Add RTDispatchGlobals allocation for ray tracing
If a kernel has ray tracing calls, we allocate and initialize
per-device RTDispatchGlobals if needed, and hand off pointer to
the same into a running kernel via an implicit parameter.

Related-To: NEO-5384
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2021-12-08 09:44:13 +01:00
Bartosz Dunajski 7c610ed5bb Add new Engine Group types
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-07 15:28:15 +01:00
Filip Hazubski 2098b0c3fa Refactor Device::engineGroups to store only available engine groups
Simplify logic around engine groups.
Remove no longer needed code.
Ensure correct device is used when verifying engine groups.

Related-To: NEO-6219

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-06 18:27:31 +01:00