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
Andrzej Swierczynski
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
Filip Hazubski
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
Krzysztof Gibala
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
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
Filip Hazubski
d1e0768cf5
Remove unused code
...
Change-Id: I342f58dc72a6ed5a9b9d9d30d5c43a109da5ff5b
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-09-21 11:42:54 +02:00
Mateusz Jablonski
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
Filip Hazubski
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
Mateusz Jablonski
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
Pawel Cieslak
fb821f21f5
Cmake format script
...
Related-To: NEO-1157
Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Filip Hazubski
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
Filip Hazubski
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
Mateusz Jablonski
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
Mateusz Jablonski
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
Andrzej Swierczynski
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
Sebastian Luzynski
fa3cb35fde
Add check if device support Images.
...
Related-To: NEO-4675
Change-Id: I0c2b6e04536e45e70748983521e8469dd3dad697
2020-06-24 23:38:03 +02:00
Jaime Arteaga
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
Maciej Dziuban
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
Filip Hazubski
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
Mateusz Jablonski
7f5aa241b2
Correct creating shared unified memory
...
select device from context when device is not provided by user
return error when allocation fails
Related-To: NEO-4588
Change-Id: I2196ebf7c3e7908d1f8ca60c85ab2ef449997f9c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-05 11:27:49 +02:00
Filip Hazubski
0a6da52bd4
Add implementation of new OpenCL 3.0 API functions
...
Additionally unify implementation of API functions related to creating buffers
and images.
Related-To: NEO-4368
Change-Id: Icfafc32f15e667e249fb318072194b6f76bd6481
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-15 12:09:08 +02:00