Commit Graph

291 Commits

Author SHA1 Message Date
Compute-Runtime-Validation 908a7721b2 Revert "Assign engine to command queue using round robin algorithm"
This reverts commit 2fff0f9059.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-11-10 07:25:44 +01:00
Lukasz Jobczyk 2fff0f9059 Assign engine to command queue using round robin algorithm
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-11-09 11:05:16 +01:00
Mateusz Jablonski c16eb0ff84 Correct getGpgpuEngineInstances function
dont expose bcs engine if blitter operations not supported

Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-09 08:36:05 +01:00
Compute-Runtime-Validation 9058de77cc Revert "Assign engine to command queue using round robin algorithm"
This reverts commit 1c68ac1cbc.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-11-08 16:36:18 +01:00
Mateusz Jablonski fbf1f367f4 Dont create blitter engine when blitter support is disabled
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-05 11:07:07 +01:00
Lukasz Jobczyk 1c68ac1cbc Assign engine to command queue using round robin algorithm
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-11-03 17:16:54 +01:00
Mateusz Jablonski f3afde1153 Dont expose internal copy engine if blitter operations are disabled
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-28 20:57:52 +02:00
Jitendra Sharma f8c89fe984 Refactor memory manager so as to support device reset
Move out neoDevice dependent pieces of memory manager code into
separate methods. Those methods could be used for recreating a neoDevice
after a device reset is performed.

Related-To: LOCI-2615

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2021-10-19 07:16:29 +02:00
Bartosz Dunajski 5856c283c5 Remove HardwareCapabilities struct
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-12 07:25:06 +02:00
Katarzyna Cencelewska a157963e79 Fix problem with compression hang on gen12lp
add creating of pageTableManager for non regular engins

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-10-06 17:02:08 +02:00
Jaime Arteaga 62de443660 Add copy engine support for USM shared migration
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-10-06 10:43:31 +02:00
Katarzyna Cencelewska 30b3f5cdb0 Move PageTableManager from rootDeviceEnvironment to CommandStreamReceiver
Also add init of pageTable registers to blitter path

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-09-30 12:59:11 +02:00
Compute-Runtime-Validation 33f88884bd Revert "Add copy engine support for USM shared migration"
This reverts commit 91e9587a07.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-09-28 19:48:14 +02:00
Jaime Arteaga 91e9587a07 Add copy engine support for USM shared migration
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-09-28 15:30:59 +02:00
Bartosz Dunajski c525ff7eb4 Disable single tile engine instanced subdevices
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-27 16:20:53 +02:00
Bartosz Dunajski 7b564b5caa Move OsTime to RootDeviceEnvironment
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-24 16:23:34 +02:00
Bartosz Dunajski 0345d9f707 Improve queries with number of SubDevices
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-01 14:01:57 +02:00
Bartosz Dunajski 92000bd75b Improve Device getter to support EngineInstanced Device with single Engine
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-31 15:50:23 +02:00
Bartosz Dunajski 294859eacf Create single engine for EngineInstanced Devices
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-31 09:28:53 +02:00
Filip Hazubski 4f77db267b Create cooperative engine once on engineInstanced device
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-26 16:46:35 +02:00
Bartosz Dunajski cb91474b1a Improve getDevice methods
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-26 14:45:00 +02:00
Filip Hazubski 63f8c9d98b Add new EngineUsage
Simplify verifying EngineUsage in tryGetEngine function.
Remove unused getGpgpuEnginesCount function.

Related-To: NEO-4940

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-23 17:41:13 +02:00
Bartosz Dunajski 4fb5ceeb89 Add helper engines to EngineInstanced Device
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-19 16:14:19 +02:00
Filip Hazubski 84da4648cd Refactor engineGroups container
Use static array instead of the vector.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-19 13:49:32 +02:00
Konstanty Misiak ad19eda689 Fix event profiling for marker commands
Related-To: NEO-5799

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2021-08-13 15:02:01 +02:00
Bartosz Dunajski 2661962ac3 Pass engine instanced parameter during OsContext creation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-13 11:14:29 +02:00
Bartosz Dunajski fb996a3d5b Add EngineDescriptor helper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-12 15:19:46 +02:00
Dominik Dabek 2a7757651a Change percent of global memory returned
Related-To: NEO-5796

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-08-11 13:33:16 +02:00
Bartosz Dunajski 5c7955b1d0 Update getInternalEngine() implementation and remove unused method
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-03 21:25:33 +02:00
Lukasz Jobczyk 9e50138829 Defer ULLS initialization
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-07-21 15:55:16 +02:00
Jim Snow 2acc0fb3f6 Add memory backed buffer allocation for L0 ray tracing.
This allocates the buffer on a per-device basis and enables ray
tracing on devices that support it when given a kernel with ray
tracing calls.

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2021-07-02 11:56:18 +02:00
Michal Mrozek ad3855ceb3 Revert "Fix event profiling for marker commands"
This reverts commit 5f0167b477993f3ebc804c53a110bc432638615b.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2021-07-01 08:01:33 +02:00
Konstanty Misiak 1df1094465 Fix event profiling for marker commands
Related-To: NEO-5799

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2021-06-30 14:56:39 +02:00
Compute-Runtime-Validation 3137e82fca Revert "Remove redundant DualSubSliceCount checks"
This reverts commit 5e85fe5042.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-06-17 13:47:49 +02:00
Filip Hazubski 5e85fe5042 Remove redundant DualSubSliceCount checks
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-06-17 11:11:56 +02:00
Zbigniew Zdanowicz a692f1ecc5 Move flag setup after initialization
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-05-20 13:39:18 +02:00
Dominik Dabek f861b29802 Add ClDeviceGlobalMemSizeAvailPercent debug flag
Related-To: NEO-5796

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-05-19 16:16:27 +02:00
lgotszal 3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Mateusz Jablonski fcbf1dcf32 Mark SVM_GPU allocation as not lockable
require blitter usage if allocation is not lockable and in local memory

Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 17:47:15 +02:00
Mateusz Jablonski a552d1fd65 Revert "Mark SVM_GPU allocation as not lockable"
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 12:24:02 +02:00
Mateusz Jablonski a79f7b678b Mark SVM_GPU allocation as not lockable
require blitter usage if allocation is not lockable and in local memory

Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 09:49:35 +02:00
Bartosz Dunajski 7216623d6b Ability to change Generic SubDevice to EngineInstanced
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-10 17:30:47 +02:00
Bartosz Dunajski 75e8dc499e Unify Device methods
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-10 12:11:24 +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
Bartosz Dunajski 9458638718 Affinity mask helper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-05 13:59:12 +02:00
Bartosz Dunajski 0c9050c26c Create Root CSR only for Devices with Generic SubDevices
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-27 14:04:05 +02:00
Bartosz Dunajski dfb935fdcf Engine instanced SubDevices [1/n]
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-23 17:10:19 +02:00
Bartosz Dunajski 176270114b Simplify RootDevice class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-22 17:41:52 +02:00
Bartosz Dunajski a19c3eeee4 Remove Unrecoverable
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-22 13:54:12 +02:00
Mateusz Jablonski 9a22d06efe Store default engine index per root device
Resolves: NEO-5768
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-20 14:55:13 +02:00
Maciej Dziuban 927c097b0e Correct default engine index in MemoryManager
Related-To: NEO-5610
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-04-19 16:20:33 +02:00
Maciej Dziuban 5318ff1872 Defer OsContext initialization
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-04-19 11:54:34 +02:00
Bartosz Dunajski 9cf7651643 Simplify Device classes
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-08 19:00:59 +02:00
John Falkowski 218387dd47 Apply timerResolution mod for L0 V1.1
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2021-03-27 11:43:03 +01:00
Filip Hazubski 8d55bfe21d Implement zeCommandListAppendLaunchCooperativeKernel
Resolves: NEO-4725


Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-03-22 19:26:41 +01:00
Mateusz Hoppe db1157f729 Do not create preemption allocation when debugger is used
- preemption alloc should only be needed with MidThread

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-03-18 17:43:03 +01:00
Maciej Dziuban 3f5b9df122 Pass EngineUsage to getEngine
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-03-16 16:31:44 +01:00
Maciej Dziuban 264f20ea00 Pass EngineTypeUsage to OsContext creation
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-03-16 10:21:18 +01:00
Konstanty Misiak 88a1593913 Add software tags
Related-To: NEO-344

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2021-03-15 15:51:08 +01:00
Bartosz Dunajski 8b89fb8541 Capability to exclude Engine on SubDevice
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-08 11:32:13 +01:00
Maciej Dziuban 160e5ec112 OpenCL Queue Families extension 12/n
Fix engine selection for copy engines

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Relate-To: NEO-5120
2021-01-27 21:27:43 +01:00
Maciej Dziuban 544dd141ec Refactor addEngineToEngineGroup functions
This change replaces HwHelper::addEngineToEngineGroup with getEngineGroupType,
so we're able to map EngineType to EngineGroupType without pushing engines.

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-12-29 15:46:01 +01:00
Maciej Dziuban 14f92cc7a1 OpenCL Queue Families extension 1/n
Basic implementation, some things will be tweaked in future commits

Related-To: NEO-5120
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-11-24 11:48:18 +01:00
Mateusz Hoppe 8aacad1854 Create DebuggerL0 only when debugging is supported
Related-To: NEO-5239

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-23 18:28:45 +01:00
Bartosz Dunajski d35806fdd8 Improve returning global and max alloc memory size
Change-Id: I2f22481412184f01652b7e49bc30a57c56e6204b
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-30 15:58:42 +01:00
Zbigniew Zdanowicz c678f3d9b0 Make DeviceBitfield argument constant
Related-To: NEO-5225

Change-Id: I14a5a4cc3394cd2b58a74bda183c734a0d17ac25
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-30 13:45:32 +01:00
Mateusz Hoppe ac3b65ba82 Refactor isDebuggerActive
- use it for SourceLevelDebugger only

Change-Id: I130219a13d6baa1f72c5b35295afd6efa4bf37fa
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-29 12:21:18 +01:00
Maciej Plewka 6bb4112d1e Create heap helper for bindless
Related-To: NEO-4724

Change-Id: I62527a3ad06dce5d886b6ecfebd3c9abc46f6741
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-10-29 10:51:38 +01:00
Zbigniew Zdanowicz 30a67618f8 Add DeviceBitfield argument to CSR constructor
Related-To: NEO-5225

Change-Id: I8cf0aef3ec16314cfb1a787852b6c20ce0f65955
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-28 17:10:31 +01:00
Bartosz Dunajski 5b31b31734 Remove low priority and internal engine index variables
Change-Id: I984dbcedd5456cfdee284f4d2eda1371ba77f0d0
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-21 16:44:14 +02:00
Jim Snow 9f21418c4f Disable gemCloseWorker for internal DrmCommandStreamReceivers
Change-Id: I71abdcb417342110ddc64cc9b1dacecc24c78aac
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2020-09-09 12:31:24 +02:00
Sebastian Luzynski 4bffae8254 Delete redundant code.
Change-Id: I0f7b41a62d28fe03e22f18f27c8de928d630da6a
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-08-11 12:42:45 +02:00
Jaime Arteaga 4ca4100a9a Add support for queue groups (1/N)
Change-Id: If4763dcb749acc8a6fd68714119808286306410f
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-07-30 16:26:53 -07:00
Lukasz Jobczyk ff0add74e3 Add alternative residency model on Linux
Related-To: NEO-4732

Change-Id: I79e165d2b647af200ca314e1183ecf05903de644
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-10 12:38:57 +02:00
Mateusz Hoppe 68847ef942 Create L0 debugger object
Related-To: NEO-4713

Change-Id: I9d10019bbe6e8514ce10bdd729a64ea233bf91b0
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-19 15:46:52 +02:00
Kamil Kopryk bc94d79c2e Fix isSimulation
Change-Id: I5f4e4996561acce44c1af9572af1855573262d1a
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2020-05-14 13:12:17 +02:00
Jaime Arteaga 77791ba889 Create Level Zero command queue based on queue desc ordinal
And correctly return the number of engines available.

Related-to: NEO-4590

Change-Id: I637b3a94473e146003ea5e1c86d38e311406ce7e
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-07 12:10:54 +02:00
Mateusz Jablonski 2d5a822290 Reduce global memory size for sub devices
Related-To: NEO-4484
Change-Id: I6822ceedddde03353d6a2c6b2234f31d91fd9efe
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-17 11:38:37 +02:00
Filip Hazubski 5be85293d6 Remove getSupportedClVersion function from Device
Related-To: NEO-3938

Change-Id: Ida4e0d8b3a758376ea433960c8a329c061b15666
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-23 09:22:17 +01:00
Mateusz Jablonski 97bad05923 Move DriverInfo to shared/source/os_interface
Related-To: NEO-4457
Change-Id: I427cceeee9b2804fdd047c8a6acde3ad5f85923f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-16 17:35:25 +01:00
Lukasz Jobczyk 9cc4d6fba1 Move debugger to root device environment
Resolves: NEO-3857

Change-Id: I216ef0cfc4ed7e1ab67261378905c6c0ec40a17f
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-13 10:07:17 +01:00
Filip Hazubski 5ac8d8e667 Add ClDeviceInfo
DeviceInfo contains a subset of ClDeviceInfo values.

Related-To: NEO-3938

Change-Id: Idae4fae4d25e1fb3106d8b95294fa70ebc6281df
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-11 16:45:27 +01:00
Zbigniew Zdanowicz 11f76befda Limit direct submission to default context by default
Change-Id: I274d402eead87afca634d3b876fe500777910f96
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-09 13:02:07 +01:00
Mateusz Hoppe 97d9d35ab7 Move SourceLevelDebugger to shared
Change-Id: I8c8e1c69414833908519ceea8fc30362222f01c9
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-03-09 12:33:43 +01:00
Zbigniew Zdanowicz ad4925aef9 Do not use direct submission in internal and low priority contexts
Change-Id: Ifac52dd36737151ea4d84bec95750e1716cafa9a
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-04 13:12:37 +01:00
Mateusz Jablonski ec647dabe9 Move GmmHelper to RootDeviceEnvironment
Related-To: NEO-3691
Change-Id: I8afdf65f360acc5b9d7b47a728d1d185e5e3700b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-27 15:50:56 +01:00
Mateusz Jablonski 74072d4916 Access GmmHelper and GmmClientContext via RootDeviceEnvironment
Related-To: NEO-3857
Change-Id: Ie9d719c9884fd89580ce3592a0d4d4cd42862f47
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-25 12:32:16 +01:00
Dunajski, Bartosz 750036742d Create only available engines
Change-Id: If7880db0dd7aa76b578d0e4e300f510ca686b825
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2020-02-24 14:06:36 +01:00
Mateusz Jablonski 9dbeeea18f Clang-format: restore sorting includes
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +01:00
Mateusz Jablonski 7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00