Commit Graph

58 Commits

Author SHA1 Message Date
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
Krystian Chmielewski ef71915c71 Remove KernelArgInfo and use KernelDescriptor's args instead
Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-04-23 15:12:09 +02:00
Adam Cetnerowski 33f05a25cd Fix typo
Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2021-04-21 16:25:17 +02:00
Mateusz Jablonski 8215395401 Simplify Context method
return if context has multiple sub devices related to a given root device

Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-30 10:22:15 +02:00
Mateusz Jablonski 35ff284944 Cleanup Kernel class
move deviceVector to MultiDeviceKernel class
remove Device arg from Kernel's methods

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-24 09:17:41 +01:00
Mateusz Jablonski 7098e9c5f2 Store single KernelInfo in Kernel
remove root device index from Kernel's methods

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-22 21:30:03 +01:00
Mateusz Jablonski 35d2325361 Remove KernelDeviceInfo struct
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-22 14:25:23 +01:00
Mateusz Jablonski 7a58e7bc3e Pass Device to Kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-19 17:44:54 +01:00
Mateusz Jablonski 487f10f999 Use MultiDeviceKernel instead of Kernel in clCloneKernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-18 20:19:54 +01:00
Mateusz Jablonski a612bb32a3 Call MultiDeviceKernel's methods on each kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-18 11:56:31 +01:00
Igor Venevtsev 52e118fe49 Add extra parameters to Buffer::setSurfaceState() method
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-16 10:17:59 +01:00
Mateusz Jablonski 04eca48ee0 Introduce MultiDeviceKernel class
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-15 11:46:52 +01:00
Krystian Chmielewski 41f3bd00ff Remove PatchTokens from KernelInfo
Use KernelDescriptor instead of patchTokens stored in KernelInfo's
patchInfo.
Removed: SPatchMediaInterfaceDescriptorLoad, SPatchAllocateLocalSurface,
SPatchMediaVFEState(slot 0), SPatchMediaVFEState(slot 1),
SPatchInterfaceDescriptorData, SPatchSamplerStateArray,
SPatchBindingTableState, SPatchDataParameterBuffer,
SPatchDataParameterStream, SPatchThreadPayload,
SPatchKernelAttributesInfo, SPatchAllocateStatelessPrivateSurface,
SPatchAllocateSyncBuffer,
SPatchAllocateStatelessConstantMemorySurfaceWithInitialization,
SPatchAllocateStatelessGlobalMemorySurfaceWithInitialization,
SPatchAllocateSystemThreadSurface.

Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-03-09 17:09:13 +01:00
Jaime Arteaga 722a80079b Add experimental_properties for indirect access (2)
Add support to OpenCL to also make use of indirect access properties
provided by IGC and to make use of DisableIndirectAccess debug key.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-02-25 11:41:24 +01:00
Mateusz Jablonski f583ec7d8f Revert "Create a new class for handling multi device SVM arguments in kernel"
This reverts commit 00b2a28818.

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-01-26 16:06:53 +01:00
Mateusz Jablonski 00b2a28818 Create a new class for handling multi device SVM arguments in kernel
set arg SVM for devices in Kernel

Related-To: NEO-5001


Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-01-22 15:53:02 +01:00
Lukasz Jobczyk 40390f7775 Add simple kernel tunning variant
Related-To: NEO-5327

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-01-13 11:09:22 +01:00
Slawomir Milczarek d605234843 Add function to check if kernel has indirect stateless access to host memory
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-11 15:31:47 +01:00
Slawomir Milczarek 55f3c8f134 Add resolve capability for compressed USM device allocations
Related-To: NEO-5107

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-08 12:16:26 +01:00
Lukasz Jobczyk 239f37da64 Introduce kernel tunning under debug flag
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-12-30 14:05:55 +01:00
Mateusz Jablonski be7ae13911 Store SLM sizes per root device in Kernel
reduce usages of getDefaultKernelInfo

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-22 17:37:43 +01:00
Mateusz Jablonski ee0523ae23 Correct device usage in kernel methods
pass device to substituteKernelHeap
use proper device when iterating over devices

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-17 14:46:46 +01:00
Mateusz Jablonski c3c92416db Enable memory transfer for mem obj kernel args
correct building programs with multiple root devices

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-17 11:14:33 +01:00
Slawomir Milczarek 847bad4763 Add function to check if kernel has direct stateless access to host memory
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-16 10:06:17 +01:00
Mateusz Jablonski c0fb03425b Optimize getDefaultKernelInfo method
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-11 13:45:13 +01:00
Mateusz Jablonski aa1fc85257 Store device specific kernel members per root device
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-10 17:57:39 +01:00
Mateusz Jablonski 350ec9f16b Pass root device index to get proper kernel info
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-09 19:11:43 +01:00
Mateusz Jablonski c8d1e082dd Update getKernelInfo method
add root device index parameter to return proper kernel info

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-08 09:14:44 +01:00
Mateusz Jablonski 0d943e95c4 Store KernelInfo per root device in Kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-07 12:22:28 +01:00
Jobczyk, Lukasz 343fd602fa Add method to submit kernel on single subdevice
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2020-12-01 22:15:05 +01:00
Mateusz Jablonski b85a8ace68 Pass root device index to Kernel's methods
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-25 12:49:15 +01:00
Mateusz Jablonski 7ec69c33f9 Store SSH per root device in Kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-24 17:57:31 +01:00
Mateusz Jablonski 52d96af5f0 Use device from API function in clGetKernelWorkGroupInfo/SubGroupInfo
store execution environment reference in Kernel class

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-24 17:45:59 +01:00
Mateusz Jablonski a67e829fa8 Store crossThreadData per root device in Kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-20 20:49:50 +01:00
Mateusz Jablonski 2003fe46a6 Don't store Context in Kernel
reuse Context from Program

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-19 13:38:18 +01:00
Mateusz Jablonski 33a487e2cc Create structure for per root device members in Kernel
make private surface per root device

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-18 17:36:05 +01:00
Mateusz Jablonski 9d7807709d Dont use Device from Kernel 2/n
make getDevice method protected

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-18 09:43:08 +01:00
Mateusz Jablonski 97119f5f3e Store ClDevice in DispatchInfo
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-17 10:29:20 +01:00
Mateusz Jablonski bd432fa94c Don't use device from kernel if possible [1/n]
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-13 17:41:18 +01:00
Mateusz Jablonski a1b5d5a335 Dont pass device to Kernel's ctor
Kernel should reuse devices from program

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-13 11:42:48 +01:00
Mateusz Jablonski 5787d86575 Minor cleanup in Kernel class
setup default values in header file

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-12 19:24:58 +01:00
Mateusz Jablonski 61d61e8b1c Remove Program::pDevice
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-10 11:25:41 +01:00
Sebastian Luzynski de5fe3c1b3 Adjust params checking.
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-11-05 12:37:52 +01:00
Sebastian Luzynski 225e7f01b4 Add checks for correct engine for concurrent kernels.
Related-To: NEO-5135
Change-Id: Ib1c37ec8d5e468de331521ae4be1cd92902a2330
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-10-26 14:53:52 +01:00
Krystian Chmielewski 9f08a60a20 KernelInfo Refactor
Using kernelDescriptor.kernelMetadata.kernelName instead of
kernelInfo.name

Change-Id: I11f5721d8072a3beccb573cec4bea56cf14cf0f9
2020-10-20 13:18:09 +02:00
Pawel Wilma 0c3d430f50 W/A for disabling RCC RHWO for compressed media surfaces on gen12lp
Whenever media compressed surface is used, the RCC Read-Hit-Write optimization
disable bit (14) has to be set in Common Slice Chicken1 register (7010h).

Related-To: NEO-4982

Change-Id: I71b91b52692252459da05b737838eb4854575974
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-10-13 11:52:15 +02:00
Zbigniew Zdanowicz 47f5867e8f Move common code to shared directory
Change-Id: I5f604de01e06d35cc1e045fffdd4a26d88ffca8c
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-07 10:55:39 +02:00
Sebastian Luzynski d24850cff3 Alter API with additional kernel exec info.
Related-To: NEO-4875
Change-Id: I10a5e3bfc32be520c3554c992dc36591fc1ff599
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-09-25 13:00:24 +02:00
Lukasz Towarek 867b3d5492 Add getAdditionalWorkGroupInfo stub
Change-Id: I4b51e531c2e3da1c616c1f0eb038abd60e47c4f0
2020-08-19 15:54:50 +02:00
Mateusz Hoppe dd407681ff Check if kernel was compiled for debug
Related-To: NEO-4776

Change-Id: I54fe64430bf0c4d7972018367340a2ac88a94f99
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-23 08:51:31 +02:00