Commit Graph

74 Commits

Author SHA1 Message Date
Dominik Dabek b109094e4b fix: move ulls controller stop thread
Move ulls controller thread stopping to execution environment
destructor. This removes the vptr race from ulls controller destructor.

Put tests that are actually running the ulls controller into multi thread
tests.

That way they are compiled with thread sanitizer and removes the
variable test time from traditional ULTS.

Related-To: NEO-10942

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-04-02 08:26:19 +02:00
Dominik Dabek 295b58a11f fix: move ulls controller thread start
Move starting ulls controller thread outside constructor to avoid vptr
race.

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-03-27 08:06:50 +01:00
Jaroslaw Warchulski 7c5640669c fix: incorrect check in parseAffinityMask function
Resolves: GSD-8333
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-03-19 09:20:00 +01:00
Bellekallu Rajkiran 9736313d10 feature: Support for ccs mode configuration via SysFs
Add support for configuring ccs mode for all applicable devices
before KMD is loaded.

Use ZEX_NUMBER_OF_CCS to configure ccs mode.

Format is as follows:

ZEX_NUMBER_OF_CCS=NumberOfCcs i,e Setting ZEX_NUMBER_OF_CCS
to 4 sets ccs mode to 4 for all devices for which configuration
is supported.

Related-To: NEO-10378

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2024-03-15 15:51:45 +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 dd1b9d6abc refactor: correct naming of enum class constants 8/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 08:18:18 +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
Compute-Runtime-Validation fca2159430 Revert "fix: if device hierarchy is flat then getSubDevicesCount return 1u"
This reverts commit cb0bb57f49.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-26 15:40:29 +02:00
Baj, Tomasz cb0bb57f49 fix: if device hierarchy is flat then getSubDevicesCount return 1u
Related-To: NEO-9167

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2023-10-25 15:51:52 +02:00
Mateusz Jablonski c7287f9feb fix: populate map of indices using push_back methods
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-10 15:50:27 +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
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
Spruit, Neil R ea7b7d7009 feature: Support for Combined Device Hierarchy
Related-To: LOCI-4662

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-08-21 10:26:20 +02:00
Andrzej Koska 0a3b135673 fix: Taking into account variable ReturnSubDevicesAsApiDevices
Taking into account variable ReturnSubDevicesAsApiDevices
during Retain and Release Device

Related-To: NEO-8161

Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
2023-08-16 16:14:42 +02:00
Neil R Spruit 8efd8853fb feature: L0 Device Hierarchy support for Composite & Flat modes
Related-To: LOCI-4615

- Added Support for users to set ZE_FLAT_DEVICE_HIERARCHY to either FLAT
or COMPOSITE to change how devices are returned in zeDeviceGet and
clGetDeviceIDs.
- COMPOSITE is default behavior that exists today.
- FLAT returns all sub devices which have no sub devices and all root
devices that have no sub devices in zeDeviceGet ie with all devices
flattened out in order.
- Added zeDeviceGetRootDevice for one to retrieve the Root Device for
any SubDevice.

Signed-off-by: Neil R Spruit <neil.r.spruit@intel.com>
2023-07-20 01:00:54 +02:00
Maciej Plewka 18ead77e78 fix: Add mutex for ulls controller initializer
Resolves: NEO-7925

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-07-18 12:16:12 +02:00
Mateusz Jablonski 4e464e9d6f fix: adjust root device indices when filtering root device environments
Related-To: NEO-8166
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-07-11 13:12:20 +02:00
Mateusz Jablonski 3b981331c9 fix: correct handling ZE_ENABLE_PCI_ID_DEVICE_ORDER flag
- by default ZE_ENABLE_PCI_ID_DEVICE_ORDER is disabled
- by default devices are sorted by type (discrete first), then by pci order
- when ZE_ENABLE_PCI_ID_DEVICE_ORDER is enabled, devices are sorted by pci id

Related-To: LOCI-4520

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-06-14 16:27:55 +02:00
Lukasz Jobczyk d030aff3f0 performance: Adjust NEO CAL config
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-05-22 12:29:10 +02:00
Lukasz Jobczyk f509ac3fce Remove UseDrmVirtualEnginesForBcs from CAL config
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-04-25 14:27:31 +02:00
Kamil Kopryk fa8579602f refactor: rename product helper files n/n
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-10 13:24:38 +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
Kamil Kopryk 2484c7ceb2 refactor: rename hw_helper files to gfx_core_helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-01 19:37:51 +01:00
Kamil Kopryk be855d7a47 refactor: don't use global ProductHelper getter 10/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-25 18:23:23 +01:00
Warchulski, Jaroslaw bd81b5546d Cleanup includes 25
Cleaned up files:
level_zero/core/source/device/device.h
opencl/source/helpers/dispatch_info.h
shared/source/os_interface/os_interface.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-10 12:54:45 +01:00
Lukasz Jobczyk 9a992dc507 Remove UseDrmVirtualEnginesForCcs from CAL config
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-12-29 14:18:57 +01:00
Warchulski, Jaroslaw 803bbb89d2 Cleanup includes 13
Cleaned up files:
shared/source/helpers/blit_commands_helper.h
shared/source/helpers/heap_assigner.h
shared/source/memory_manager/alignment_selector.h
shared/source/memory_manager/gfx_partition.h
shared/source/memory_manager/memory_manager.h
shared/source/os_interface/os_memory.h
shared/source/utilities/heap_allocator.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-12-16 12:36:27 +01:00
Kamil Kopryk 03b687881f Rename HwHelper -> GfxCoreHelper
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-09 10:29:06 +01:00
Warchulski, Jaroslaw c10aa90815 Cleanup includes 11
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-12-06 12:25:30 +01:00
Lukasz Jobczyk 1f9a5b878f Configure env variables when CAL enabled
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-10-27 16:18:11 +02:00
Bellekallu Rajkiran 7f8e9378b6 Adjust ccs on reinit
Parse and adjust ccs count on reset so that initial
environment is restored.

Related-To: LOCI-3435

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2022-09-26 11:24:21 +02:00
Mateusz Jablonski 7b86c8da2e Add support for limiting number of CCS engines
This commit adds support for ZEX_NUMBER_OF_CCS flag which can be used
for limiting number of CCS engines

Format is as follows:

ZEX_NUMBER_OF_CCS=RootDeviceIndex:NumberOfCCS;RootDeviceIndex:NumberOfCCS...

i.e. setting Root Device Index 0 to 4 CCS, and Root Device Index 1 To 1 CCS

ZEX_NUMBER_OF_CCS=0:4,1:1

Related-To: NEO-7195
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-10 19:38:03 +02:00
Mateusz Jablonski 3b3d40252e Revert "Limit number of CCS engines on PVC"
This reverts commit 8f8370be32.

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-08 18:40:24 +02:00
Mateusz Jablonski 8f8370be32 Limit number of CCS engines on PVC
Expose only one CCS engine

Related-To: NEO-7195
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-08 14:05:35 +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
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
Bartosz Dunajski 927bbe9ee9 Disable DirectSubmission in aub/tbx mode
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-01 11:00:42 +01:00
Jitendra Sharma 1186c1aae3 zesSysmanDeviceReset: Reinitialize device after device reset
Before performing gpu device reset, first all level zero resources
and gpu device specific resources have to be cleaned up. Also as
after device reset, state of gpu device would be lost.
Hence after performing gpu device reset, level zero device have
to be reinitialized by querying gpu device again.
This change is aimed at reinitializing the level zero resources
after gpu device reset, so that user could continue using level zero
devices after device reset.

Related-To: LOCI-2627

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2021-11-07 23:43:48 +01:00
Lukasz Jobczyk 5a240e1d66 Enable direct submission controller
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-26 12:07:11 +02:00
Lukasz Jobczyk 63cb7047d5 Revert direct submission controller enabling
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-25 17:16:10 +02:00
Lukasz Jobczyk 948d52b3a3 Enable direct submission controller
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-25 11:41:11 +02:00
Bartosz Dunajski ad15fe2970 Second level affinity mask support
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-30 14:29:48 +02:00
Bartosz Dunajski 3216302499 Improve affinity mask handling
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-03 08:53:35 +02:00
Bartosz Dunajski 1bfe7d5839 Improve maxOsContextCount calculation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-31 09:12:15 +02:00
Lukasz Jobczyk 1638554a49 Add direct submission termination mechanism
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-20 13:57:28 +02:00
Jaroslaw Chodor 9dbffa8d93 Refactoring createMemoryManager
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-05-25 16:58:21 +02:00
Jaroslaw Chodor 0e9aa45e46 Improving OS abstraction
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-05-23 21:40:37 +02:00
Bartosz Dunajski 84f721d35a Ability to change Generic SubDevice to Engine instanced - part 2
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-11 14:07:12 +02:00
Bartosz Dunajski b7e04ebbea 3rd level ZE_AFFINITY_MASK support.
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-07 21:00:19 +02:00