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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
de5fe3c1b3
Adjust params checking.
...
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com >
2020-11-05 12:37:52 +01:00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
bdf8c5fc90
Extend UnifiedMemoryProperties constructor to take device bitfield
...
Related-To: NEO-4722
Change-Id: Ice185f1792635922e9bb89cd7329e6501bc585e0
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com >
2020-10-06 16:35:08 +02:00
155578568b
Update functions to create buffer and image objects
...
Functions clCreateBufferWithPropertiesINTEL and
clCreateImageWithPropertiesINTEL now accept a parameter `cl_mem_flags flags`.
Change-Id: I71823457397c00f93aed236afaa0041936c4161d
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2020-10-05 11:08:49 +02:00
214342f405
Create map for deviceBitfields per rootDeviceIndex
...
Pass rootDeviceIndex to getDeviceBitfieldForAllocation
Related-To: NEO-4589
Change-Id: Ib325a8bf822351ba36b225d94d4173fd725e8766
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com >
2020-09-29 12:18:49 +02:00
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
d1e0768cf5
Remove unused code
...
Change-Id: I342f58dc72a6ed5a9b9d9d30d5c43a109da5ff5b
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2020-09-21 11:42:54 +02:00
b52aec07dd
Move symbols and linkerInput from Program to BuildInfo
...
these members should be kept per root device
Related-To: NEO-5001
Change-Id: Ie5e06deed234706cc41943d3c5e932c7d877127b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2020-09-11 08:01:25 +02:00
d889c599b2
Correct callback API functions
...
Add implementation to clSetProgramReleaseCallback and
clSetContextDestructorCallback functions.
Resolves: NEO-4962, NEO-5051
Change-Id: Iad6fffc663665a3cf16b96aa90065140cf8c5477
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2020-09-08 14:08:50 +02:00
40d487fa90
Add global destructor of platforms
...
Change-Id: I7f0c9a9a13cae5cbf831e0d4e410c78c001a75d1
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2020-09-01 17:26:17 +02:00
c5866944f4
Add clSetContextDestructorCallback API function
...
Change-Id: If0f06ffcbd6236ef7ffbc78347e67897177eb121
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2020-08-10 19:17:00 +02:00
fe5bda3ed1
Correct API functions to unload compiler
...
Correct return value of clUnloadCompiler and clUnloadPlatformCompiler
API calls.
Change-Id: I352b271e9f97be88cf29c4a097aa2e664ba3206a
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2020-08-10 17:18:26 +02:00
cb6777ee73
Correct USM function signatures
...
Change-Id: I555c87edcb063114305223bb912472d61016b3c7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2020-07-30 13:05:15 +02:00
93c1e1b976
Add MultiGraphicsAllocation to USM
...
Related-To: NEO-4672
Change-Id: I53ea4bea73ae6d52840146f63bc561bb90f9fe62
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2020-07-02 09:39:21 +02:00
a5e4edb327
Choose valid bank from memory bank selector
...
Related-To: NEO-4645
Change-Id: I8d1f63ba24ead2e77ba6381e4770068bf2eb1725
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com >
2020-06-26 10:51:43 +02:00
fa3cb35fde
Add check if device support Images.
...
Related-To: NEO-4675
Change-Id: I0c2b6e04536e45e70748983521e8469dd3dad697
2020-06-24 23:38:03 +02:00
abdb707a39
Check for hardware limit for runtime device allocations
...
Use hardware limit, instead of the one used for device capabilities,
so applications can fully use the available memory in the device.
Change-Id: I910c610d7a3af254724a810c3c60b9da8d5d64a7
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2020-06-17 18:56:09 -07:00
fb43726cdc
Enabling forcing fine grained SVM creation
...
Change-Id: I0eb0af5e72f5502b788c6c8be39728bc6948c0bb
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2020-06-08 14:10:37 +02:00
78d07b9b37
Pass Device when creating MemoryProperties
...
Related-To: NEO-4651
Change-Id: Ie1f7f55d4817612de83bfb2a372fd7ac35c11930
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2020-06-05 12:42:15 +02:00