Commit Graph

95 Commits

Author SHA1 Message Date
Zbigniew Zdanowicz
3f8c19eec9 Limit system memory flag in builtin kernels to destination argument
Related-To: NEO-6959

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-19 10:58:51 +02:00
Zbigniew Zdanowicz
e07f9f0698 Add kernel algorithm to check any argument is using system memory
Related-To: NEO-6959

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-12 13:08:49 +02:00
Bartosz Dunajski
4fb4a1d77b Add LogicalStateHelper getter for CommandQueue.
Refactor Kernel handling

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-07-04 13:21:15 +02:00
Artur Harasimiuk
3f04769f07 style: configure readability-identifier-naming.FunctionCase
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-17 20:55:56 +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
Dominik Dabek
d0a32b1437 Fix: svm pointer caching
Given a following sequence of setting kernel arg svm pointers: A, nullptr, A
the kernel arg was not being set to A

Related-To: NEO-6895

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-04-25 07:59:47 +02:00
Dominik Dabek
76289be8c1 Avoid unnecessary allocation in enqueueHandler
Related-To: NEO-6837

kernelObjsForAuxTranslation will allocate only if needed

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-04-06 13:03:41 +02:00
Filip Hazubski
80b520bc9b Change ThreadArbitrationPolicy enum type to int32_t
Change ThreadArbitrationPolicy::NotPresent value to -1
Update initial values to ThreadArbitrationPolicy::NotPresent

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-07 20:04:24 +01:00
Dominik Dabek
6556d9a510 Improve caching in clSetKernelArgSVMPointer 2/n
Update allocIdMemoryManagerCounter on cache hit

Related-To: NEO-6737

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-02 18:10:52 +01:00
Dominik Dabek
7ab86d44d6 Improve caching in clSetKernelArgSVMPointer
Check allocId earlier and also reuse if allocationsCounter did not
change from last call.

Related-To: NEO-6737

Co-authored-by: Michal Mrozek <michal.mrozek@intel.com>

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-02 15:56:21 +01:00
Dominik Dabek
b9d8d8c0fd Optimize setKernelArgSVMPointer
If same pointer is already set, we don't need to set it again.

Related-To: NEO-6737

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-01 09:12:13 +01:00
Mateusz Jablonski
ea6f089e17 Unify implicit args programming across APIs
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-23 11:52:47 +01:00
Katarzyna Cencelewska
bd3e296278 Remove unused functions and struct
getProfilingTimerResolution, getParentObjectCounts,
ObjectCounts

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-02-14 09:53:35 +01:00
Michal Mrozek
27c43b27f3 Remove not needed method.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-01-20 15:02:19 +01:00
Katarzyna Cencelewska
a06fbd2077 Remove device enqueue part 10
- remove DeviceQueue

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-19 17:41:06 +01:00
Katarzyna Cencelewska
97765cd39f Remove device enqueue part 7
- mainly remove BlockKernelManager and ReflectionSurfaceHelper

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-19 10:41:57 +01:00
Katarzyna Cencelewska
59683ec491 Remove device enqueue part 6
- isParentKernel, peekParentKernel, parentKernel
- structs: AUBParentKernelFixture, MockParentKernel,
ParentKernelCommandQueueFixture

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-17 13:56:29 +01:00
Katarzyna Cencelewska
45ae4fe881 Remove device enqueue part 3
- isSchedulerKernel

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-12 13:50:18 +01:00
Bartosz Dunajski
fe8cb190bc Remove deprecated code
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-14 11:36:10 +01:00
Rafal Maziejuk
85a52b7702 Fix typo
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
2021-10-05 14:45:24 +02:00
Zbigniew Zdanowicz
25c71a6c13 Move kernel info to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-29 23:49:49 +02:00
Artur Harasimiuk
a63b9b1273 move common files to shared/
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-27 11:10:20 +02:00
Mateusz Jablonski
006afacc95 Reorder Kernel's members
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-20 17:19:04 +02:00
Milczarek, Slawomir
0a8b473f3c Add resolves for stateless compression with shared buffer
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-09-17 09:18:45 +02:00
Mateusz Jablonski
e193589582 Add implicit args support for OCL
Related-To: NEO-5081

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-13 10:54:19 +02:00
Mateusz Jablonski
7f920139b4 Correct patching private surface in cloned kernel
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-07 13:50:22 +02:00
Filip Hazubski
29c64c3dd0 Disable implicit scaling for cooperative kernels
When implicit scaling is disabled use useSingleSubdeviceValue = true.

Resolves: NEO-5757

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-18 14:56:37 +02:00
Filip Hazubski
66ee5bd3c4 Correct typo
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-03 20:08:18 +02:00
Filip Hazubski
2dd0e67e65 Disable overdispatch by default
When disable overdispatch is available:
- change default value of CFE_STATE::ComputeOverdispatchDisable to true.
- change default value of
INTERFACE_DESCRIPTOR_DATA::ThreadGroupDispatchSize to 3u.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-03 15:28:53 +02:00
Mateusz Jablonski
6f3c89decb Add mechanism to migrate multi root device memory
invalidate TLB cache if kernel requires migration


Related-To: NEO-3691

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-07-19 19:49:22 +02:00
Krystian Chmielewski
5e8e066541 Bindless support ocl
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-06-23 13:56:12 +02:00
Mateusz Jablonski
2ab961be49 Ensure that builtin kernel is patched and can't transform images
Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-06-22 16:20:07 +02:00
Maciej Dziuban
843b65bb07 Add usingImages field to the Kernel class
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-06-22 15:25:22 +02:00
Compute-Runtime-Validation
9bc4f02a88 Revert "Ensure that builtin kernel is patched"
This reverts commit c9c752526e.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-06-21 12:59:27 +02:00
Mateusz Jablonski
c9c752526e Ensure that builtin kernel is patched
Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-06-17 17:49:18 +02:00
Krystian Chmielewski
6fad8b3100 Refactor ocl kernel
Removed dispatch traits pointers and added getters. Removed uneeded
tests.

Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-06-11 16:52:09 +02:00
Filip Hazubski
b25c0e4fc0 Update StreamProperties
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-06-08 08:57:55 +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
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