Filip Hazubski
ecceddcab6
Correct clSetKernelExecInfo not to always require SVM support
...
Resolves: NEO-5269
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-03-22 21:08: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 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
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
Katarzyna Cencelewska
7fdbf4f6ef
Correct set pitch in clEnqueueCopyBufferRect
...
validate dst and src buffers
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-03-10 12:41:51 +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
Mateusz Jablonski
056300f01f
Pass internal kernel object to enqueueKernel method
...
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-08 19:14:08 +01:00
Compute-Runtime-Validation
68e01dd736
Revert "Correct set pitch in clEnqueueCopyBufferRect"
...
This reverts commit a0f3e868a1
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-02-26 13:48:41 +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
Katarzyna Cencelewska
a0f3e868a1
Correct set pitch in clEnqueueCopyBufferRect
...
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-02-25 10:39:57 +01:00
Maciej Dziuban
08506dc81e
OpenCL Queue Families extension 14/n
...
Check capabilities in clEnqueueWaitForEvents
Related-To: NEO-5120
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-02-02 11:54:43 +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
Maciej Dziuban
681c6eeb38
OpenCL Queue Families extension 11/n
...
Check for support of cross queue events in enqueue calls
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2021-01-26 14:02:54 +01:00
Bartosz Dunajski
469c929b7f
Unrestricted size flag support in clSvmAlloc
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-01-25 19:13:08 +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
Krzysztof Gibala
3385500396
Use createHostUnifiedMemoryAllocation in clHostMemAllocINTEL
...
Unlock multi device setup for host allocation
Related-To: NEO-5422
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-01-05 17:16:59 +01:00
Mateusz Jablonski
1b7d7afc07
Refactor USM properties
...
store reference to std of root device indices and device bitfields
store NEO::Device in USM properties
Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-30 11:36:56 +01:00
Maciej Dziuban
510ba83e1e
OpenCL Queue Families extension 8/n
...
Check capabilities for image to buffer and buffer to image copies
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-12-29 13:04:12 +01:00
Krzysztof Gibala
2e346b58cd
Enable memory transfer in enqueueMigrateMemObjects
...
Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-12-29 12:03:22 +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
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
Mateusz Jablonski
2ee1d569c5
Store KernelInfo per root device in Program
...
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-01 11:38:23 +01:00
Maciej Dziuban
41a90e67d7
OpenCL Queue Families extension 5/n
...
Check queue capabilities in enqueue calls for kernels, barriers and markers
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-11-30 17:35:38 +01:00
Maciej Dziuban
12ebe55679
OpenCL Queue Families extension 4/n
...
Check queue capabilities in enqueue calls for images
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-11-30 17:16:36 +01:00
Mateusz Jablonski
11592d1cb5
Add support for nullptr device input in clGetWorkGroupInfo/SubGroupInfo
...
Nullptr input is valid if kernel is associated with a single device
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-27 17:35:24 +01:00
Maciej Dziuban
ef170607c8
OpenCL Queue Families extension 3/n
...
Check queue capabilities in enqueue calls for buffers
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-11-25 14:02:10 +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
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 Jablonski
8fdc35bb4b
Disallow compiling/building program if it has attached Kernels
...
allow for creating kernel if the program is built for at least one device
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-23 18:15:44 +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
Sebastian Luzynski
de5fe3c1b3
Adjust params checking.
...
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-11-05 12:37:52 +01:00
Mateusz Jablonski
75d1ebb811
Use all devices when building program
...
remove Program::internalOptions
internal options are calculated separately in compile, link and build methods
Related-To: NEO-5001
Change-Id: I85ea2d64c72edb9b0e3f23244b59b9af20e2d357
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-02 19:37:55 +01:00
Krzysztof Gibala
2c1551d40d
Extend specialQueue in context to StackVec
...
Related-To: NEO-4589
Change-Id: I92db4cf8511e13a35307a4f48b51041a6fc7330f
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-10-30 13:33:46 +01:00
Mateusz Jablonski
430cca3f4c
Use all passed devices when linking program
...
Related-To: NEO-5001
Change-Id: I3944375023b9cb3322df83e6e042ba8be2bd762c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-30 10:24:16 +01:00
Mateusz Jablonski
20f4786423
Use all passed devices when compiling program
...
Related-To: NEO-5001
Change-Id: I852c6e57fb7c450ee4dae2d5ff59a206397b2390
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-29 16:02:23 +01:00
Mateusz Jablonski
4be05409a3
Handle program's callbacks on API level
...
Related-To: NEO-5001
Change-Id: Ic73601f874a972c9c3fe6cc1a04edd5d7915f16e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-29 11:28:02 +01:00
Mateusz Jablonski
62709a6ddc
Store build status per cl device in program
...
Related-To: NEO-5001
Change-Id: I7d9521cb45324d89ec11f39f8b857cf1554340eb
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-27 12:00:42 +01:00
Mateusz Jablonski
3bcc073b26
Respect EnableMultiRootDeviceContexts when creating context from type
...
Related-To: NEO-3691
Change-Id: Ib61ddfe1e5df5ed7611ed785fadd305a49ef204a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-27 09:08:58 +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
Mateusz Jablonski
495594142c
Improve Program::create functions
...
accept multiple devices in createFromGenBinary
remove redundant arguments
rename functions for creating built in program
Related-To: NEO-5001
Change-Id: Ic894fa3014d6eadce3747a6f7530e9848ae1f948
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-26 12:34:49 +01:00
Mateusz Jablonski
a5a5c94097
Correct clCreateProgramWithBuiltInKernels
...
create program for all provided devices
move OCL specific code from shared to opencl
Related-To: NEO-5001
Change-Id: Ic352b4e907ae75426634ae4b3c7048edecaf83e7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-22 19:26:34 +02:00
Mateusz Jablonski
b8858ee0d6
Correct clCreateProgramWithIL
...
store all devices from context
Related-To: NEO-5001
Change-Id: I728ba460f7c9e4cc500395706c85f7f12e175d2f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-22 12:52:57 +02:00
Mateusz Jablonski
8afdb2d981
Correct clCreateProgramWithBinary
...
store proper devices
validate input devices, lengths and binary
return correct binaries
Related-To: NEO-5001
Change-Id: I3822c291a4430e64afe54f1486b0014f16de3d64
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-22 08:38:24 +02:00
Mateusz Jablonski
f7dcafc295
Pass ClDeviceVector to Program's ctor
...
Related-To: NEO-5001
Change-Id: Ie0e4395fd3ed9a5df81c7075ef039092a0687b9c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-19 18:47:11 +02:00
Filip Hazubski
ca5f34133b
Move aub and tbx code to shared
...
Related-To: NEO-3964
Change-Id: Ice978e582721498d7496f989767ce7d6f5f4caf4
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-19 16:04:47 +02:00
Filip Hazubski
da524fa03d
Correct Intermediate Language related implementation
...
Change-Id: Ib2bdd21c255245767df787797bb5cfe05482e489
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-09 16:00:56 +02:00