Commit Graph

110 Commits

Author SHA1 Message Date
Jaroslaw Warchulski
daec249430 refactor: remove not needed createGraphicsAllocationFromNTHandle method
Related-To: NEO-11498
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-18 14:25:00 +02:00
Jaroslaw Warchulski
76a05c1cab refactor: pass arrayIndex to Wddm::openNTHandle function
Related-To: NEO-11498
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-12 12:11:35 +02:00
Bartosz Dunajski
da9c009b88 feature: assign unique interrupt to queue
Related-To: NEO-8179

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-07 10:06:31 +02:00
Jaroslaw Warchulski
0ac1be7669 refactor: pass arrayIndex to Wddm::openSharedHandle function
Related-To: NEO-11498
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-07 09:51:26 +02:00
Bartosz Dunajski
e88127dcc3 refactor: remove not used multi context per engine code
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-06 11:41:15 +02:00
Katarzyna Cencelewska
4dc66505f5 refactor: fix typo in test name
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-06-03 18:47:10 +02:00
Katarzyna Cencelewska
844b29d17c feature: debug flag to disable l0 debugger
Related-To: HSD-18037823909
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-06-03 16:12:01 +02:00
Bartosz Dunajski
88ed909e57 feature: assign secondary BCS engines at queue creation
Related-To: NEO-7824

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-03 09:41:43 +02:00
Bartosz Dunajski
913d5dc3b1 feature: create secondary contexts for different engine types
Related-To: NEO-7824

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-05-24 15:14:24 +02:00
Bartosz Dunajski
0a74d718f2 refactor: allow using different engine types for secondary contexts
Related-To: NEO-7824

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-05-24 09:39:46 +02:00
Mateusz Hoppe
bfc3e8fcf0 fix: assign unique ContextId for secondary engines
- add secondary engines to allRegisteredEngines

Related-To: NEO-11219

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-05-20 13:19:20 +02:00
Mateusz Hoppe
d35d8727e5 fix: use primaryCsr allocations when csr has primaryCsr set
- global fence allocation
- global stateless heap allocation
- preemption allocation
- debug surface allocation

all above are shared from primary csr

Related-To: NEO-7824


Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-05-07 02:41:24 +02:00
Katarzyna Cencelewska
ce3bb1327e feature: add method to switch enable/disable mid thread preemption
Resolves: NEO-8089

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-04-15 16:26:52 +02:00
Mateusz Hoppe
d6675b14b3 fix: release secondaryContexts prior to primary context
Related-To: NEO-10920

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-04-05 16:34:39 +02:00
Raiyan Latif
40471da591 fix: properly retrieve sub-device count in allocateRTDispatchGlobals
Previous method used for retrieiving sub-device count in this path
did not take into account device affinity mask nor device hiearchy
mode, resulting in segmentation faults when attempting to allocate
rtDispatchGlobals structure using improper deviceBitFields.

Related-To: NEO-8422

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2024-03-20 09:23:30 +01:00
Ben Ashbaugh
e00230a6c2 fix: correctly report support for SPIR-V 1.0 through 1.3
Related-To: NEO-10336

Signed-off-by: Ben Ashbaugh <ben.ashbaugh@intel.com>
2024-03-12 17:54:09 +01:00
Kamil Kopryk
168445784e feature: introduce states programming at driver init heapless ocl
Related-To: NEO-7824
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-03-08 12:29:44 +01:00
Mateusz Jablonski
8e7e5ca58f fix: return same UUID format independently on pci bus info presence
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-07 16:56:30 +01:00
Dunajski, Bartosz
00964275fb fix: create preemption allocation for Root Csr
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-02-29 16:46:24 +01:00
Compute-Runtime-Validation
9570d02134 Revert "fix: correctly report support for SPIR-V 1.0 through 1.3"
This reverts commit 5120ec2f93.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-02-15 04:00:31 +01:00
Ben Ashbaugh
5120ec2f93 fix: correctly report support for SPIR-V 1.0 through 1.3
Related-To: NEO-10336

Signed-off-by: Ben Ashbaugh <ben.ashbaugh@intel.com>
2024-02-14 09:21:06 +01:00
Mateusz Jablonski
556645e0c5 fix: add unrecoverable to avoid OOB access
Related-To: NEO-9860
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-16 00:12:11 +01:00
Mateusz Hoppe
a972cdaa6b fix: initialize device caps before creating engines
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-01-12 14:09:30 +01:00
Mateusz Hoppe
31e9b5e9fa feature: add support for secondary contexts in group
Related-To: NEO-7824

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-12-28 13:31:08 +01:00
Mateusz Jablonski
0428c0acd1 refactor: correct naming of HeapIndex enum values
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-12 11:46:17 +01:00
Mateusz Jablonski
beafea9b39 refactor: correct naming of enum class constants 2/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 13:13:35 +01:00
Mateusz Jablonski
da957d1a37 refactor: correct naming of enum class constants 1/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-05 14:26:42 +01:00
Mateusz Jablonski
e57d372608 refactor: correct naming of enum class constants
EngineGroupType
BlitDirection
PostBlitMode
WaitStatus

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-01 11:53:51 +01:00
Mateusz Jablonski
c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Baj, Tomasz
c49a9b9787 refactor: remove ReturnSubDevicesAsApiDevices from shared code
Related-To: NEO-9437

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2023-11-22 15:13:29 +01:00
Mateusz Jablonski
35c1f34672 refactor: move number of threads per eu to release helper
Related-To: HSD-18034098647
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-20 12:16:33 +01:00
Mateusz Jablonski
4dfa12c8eb fix: add mechanism to detect gpu timestamp overflows
unify naming CpuGpu to GpuCpu

Related-To: NEO-8394
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-19 16:31:06 +02:00
Spruit, Neil R
456f07212d fix: Return pageSize/Heap for reservation based on the size and devices
Related-To: NEO-9127,NEO-9142

- Change the heap/pageSize used based on the size of the reservation
required and the device heaps available.
- Return the page size required based on the size requested by the user
for virtual reservation and the devices on the system.
- Check the size passed in by the user in memory map and physical memory
allocation is valid for the heap and page size that is required.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-10-19 10:44:13 +02:00
Filip Hazubski
08e92d154f fix: Add getDefaultDeviceHierarchy call to GfxCoreHelper
Added getDefaultDeviceHierarchy call that describes default device
hierarchy for a gfx core. Refactored L0 and OCL paths to use this
value by default and override this value when user sets
ZE_FLAT_DEVICE_HIERARCHY environment variable or
ReturnSubDevicesAsApiDevices debug key.

Updated ReturnSubDevicesAsApiDevices to force COMPOSITE device hierarchy
when set to 0.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-10-06 12:32:41 +02:00
Mateusz Hoppe
371412a826 refactor: remove useLocalMem from allocate32BitGraphicsMemoryImpl
- this method allocates System Memory
- argument is not needed - ExternalHeap is selected inside this function
- remove unneeded ults
- allocate memory in Device Pool for external heap allocation in
OsAgnosticMemoryManager

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-09-18 10:08:09 +02:00
Filip Hazubski
d7db6ac467 feature: Add preferredPlatformName field to RuntimeCapabilityTable
For all of the devices, preferredPlatformName is initialized with
nullptr by default and platform name will be initialized to driver's default
platform name, at the moment this is "Intel(R) OpenCL Graphics".

When Platform is initialized and preferredPlatformName is not nullptr then
Platform name will be set to the value stored in preferredPlatformName.

Add ENABLE_LEGACY_PLATFORM_NAME AIL enum related to added functionality.

Move PlatformInfo to NEO namespace.

Related-To: HSD-22018809561

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-09-12 11:07:14 +02:00
Mateusz Jablonski
c456225654 test: add unit tests for device caps
Related-To: NEO-8187

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-31 16:44:35 +02:00
Spruit, Neil R
5c75449508 fix: Track Sub Device Hierarchy for use by Metrics Library
Related-To: LOCI-4819

- When communicating with the Metrics Libraries, if one is using a
specific sub device, then the correct physical sub device index and
number of sub devices must be used.

- When Affinity Mask is set, this hierarchy information is lost,
therefore the sub device hierarchy data is stored in a map to each
"device" to be returned to the user allowing for the correct sub device
information to be passed to the metrics library.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-08-22 21:37:25 +02:00
Fabian Zwolinski
6fca8ee195 refactor: Remove SourceLevelDebugger
Removed:
- SourceLevelDebugger (with tests)
- DebuggerLibrary
- DebuggerLibraryRestore
- debuggerSupported field from hwInfo.capabilityTable
- HasSourceLevelDebuggerSupport matcher
- ExperimentalEnableSourceLevelDebugger debug var
- EnableMockSourceLevelDebugger debug var
- DebuggerOptDisable debug var
- lib_names.h.in file
- third_party/source_level_debugger/igfx_debug_interchange_types.h

Related-To: NEO-7213
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-08-10 11:14:02 +02:00
Zbigniew Zdanowicz
8836838c7c performance: add one time context init sip state to immediate flush task
Related-To: NEO-7808

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-07-06 14:25:35 +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
Mateusz Jablonski
8ada5db581 fix: make dispatch globals array allocation lockable
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-15 14:36:45 +02:00
Milczarek, Slawomir
02a2a5e641 Extended ForceBCSForInternalCopyEngine to apply to L0 internal cmd list
Related-To: NEO-7252

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-03-29 12:02:09 +02:00
Mateusz Jablonski
553dd7f21f refactor: return thread per eu from compiler product helper
Related-To: NEO-7442
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-08 16:25:20 +01:00
Spruit, Neil R
86e739e9dc feature: Relaxed Virtual Memory reservation with pStart
Related-To: LOCI-3871

- Relaxed the Virtual Memory Reservation to allow pStart and not fail if
the pStart value is not obtained.
- Moves checks on pStart to the user to check and determine if they want
to re-reserve or use the address allocated.
- Changed reserveGpuAddress to use unit64_t type to allow internal
address range structure assignment without cast.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-03-08 08:06:50 +01:00
Mateusz Jablonski
8194543ae5 refactor raytracing: unify RT programming logic
reuse EncodeEnableRayTracing in CommandStreamReceiver
add method to determine need for 48b resource flag for RT allocations
Related-To: NEO-7606

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-07 11:51:58 +01:00
Neil Spruit
2aaebddb37 Revert "Heap allocation allow base address and growable addresses"
This reverts commit 44ec497b1a.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-02-15 18:34:40 +01:00
Jaime Arteaga
07598fb5e0 feature: Affinity mask plus ReturnSubDevicesAsApiDevices
When using ReturnSubDevicesAsApiDevices=1 to have
sub-devices-as-root-devices, then the driver should read the values
passed in the mask as those corresponding to the physical
sub-devices.

For instance, in a dual system with multi-tile device, we would have:

card 0, tile 0
card 0, tile 1
card 1, tile 0
card 1, tile 1

With:
ReturnSubDevicesAsApiDevices=0
ZE_AFFINITY_MASK=0,1

Then all tiles in card 0 and card 1 need to be exposed.

With:
ReturnSubDevicesAsApiDevices=1
ZE_AFFINITY_MASK=0,3

Then card 0 tile 0, and card 1 tile 1 need to be exposed.

Related-To: NEO-7137

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-02-15 12:28:46 +01:00
Spruit, Neil R
44ec497b1a feature: Allow for Allocating a base address in the heap and grow an allocation
Related-To: LOCI-3871

- Enabled allocation of specified base address in the targeted heap.
- Enabled virtual memory reservations to grow by allocating at the start
of the heap vs the end of the heap.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-02-15 08:13:38 +01:00
Mateusz Jablonski
24c5352350 refactor: remove redundant including of compiler_cache.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-03 11:16:31 +01:00