Commit Graph

62 Commits

Author SHA1 Message Date
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
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
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
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
0f42ef1ed7 Differentiate between users ISA and internal ISA allocation
Related-To: NEO-5240

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-16 13:16:30 +01:00
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
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
4d2750161d Move OsAgnosticMemoryManager to shared
Resolves: NEO-5188
-move MockGraphicsAllocation to shared

Change-Id: I17e90af48183f003151fab075a46e40d7df3f160
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-02 21:02:53 +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
0d35af9327 KernelInfo refactor
Using kernelDescriptor.kernelAttributes.requiredWorkgroupSize

Change-Id: I2533c6f1d4a9b2cf5c141ba7fdd516d4c9d88502
2020-10-30 14:05:46 +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
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
30a67618f8 Add DeviceBitfield argument to CSR constructor
Related-To: NEO-5225

Change-Id: I8cf0aef3ec16314cfb1a787852b6c20ce0f65955
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-28 17:10:31 +01:00
0738ad5a82 Add ClHwHelper
Related-To: NEO-3964

Change-Id: Ib2660e8f7d92fc970172517b3e2ddfd607e09ec1
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-22 13:03:07 +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
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
5f7b763ce5 Use kernel info to determine if AUX resolves required
This commit decouples the logic for AUX resolves from set kernel arg handlers.

Related-To: NEO-5107

Change-Id: I4c2912dc18633bcaefddb03cc6966e859d95262c
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-10-06 09:56:49 +02:00
f838f667b1 Add context flag for resolve requiring kernels
Related-To: NEO-5127

Change-Id: Ia5da17735232504aabbca6b0df46ced4dfba3190
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-09-28 10:34:00 +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
1f240862ce Move surface allocations from Program to BuildInfo
Related-To: NEO-5001
Change-Id: Icf011698fc166285d049b052d59c709c7419e105
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-09-16 12:01:46 +02:00
97ec64d22c Optimize first access to shared allocations
Change-Id: Ia3ce5f1e448128e7c9dfffb9ad49aaee15bdf948
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5059
2020-09-15 12:59:07 +02:00
7c7cfb1099 Delete unneeded memory transfer for USM
Change-Id: I7b11a132b621069febd5b851f9e29e7177d8d395
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5059
2020-09-14 16:13:58 +02:00
6870104a1a Pass maxOsContextCount to GraphicsAllocation
Change-Id: I4f327866433fe9b0cc0a6191336b54a9d2282702
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-26 09:57:15 +02:00
867b3d5492 Add getAdditionalWorkGroupInfo stub
Change-Id: I4b51e531c2e3da1c616c1f0eb038abd60e47c4f0
2020-08-19 15:54:50 +02:00
76328b8247 Always initialize Kernel::threadArbitrationPolicy
Resolves: NEO-4824

Change-Id: I2ba24bec1a4cc2d1573ca7283a68ea0d94c73ff0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-08-04 13:07:39 +02:00
913cfcf0a1 Pass device to KernelInfo::createKernalAllocation
Related-To: NEO-4722

Change-Id: Ica85fe3e1ff43a158337ff7049fbc8486f8f39fc
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-07-08 11:53:08 +02:00
3f64cc0e4d Improve debug flag to force aux translation
Change-Id: Ie17d3dc850de657144c7ba8b9bb7af85d77d4655
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-06 09:11:30 +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
c6239968a5 Fix typos:
preffered -> preferred
deffered -> deferred

Change-Id: I1b87861590c273d7fcda5bf0c5a772bf36e1bc74
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 19:17:41 +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
805731d36b Correct tests: pass valid device bitfield [3/n]
Related-To: NEO-4645

Change-Id: I70598011a8fb10f929fc243ffa4b9fa3c06518a3
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-06-05 10:37:00 +02:00
aa8e9fb634 Rename ocl DeviceFixture and add shared tests specific one
Change-Id: Ib61e987388ba14b721a573e3e84332a7f6c9ef9c
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-06-01 15:44:05 +02:00
02f2f22045 Add profiling support for blitter
Resolves: NEO-4121

Change-Id: I29dfcf07d48100c578cbc432fee4d87dfa18e8f4
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-05-29 13:43:14 +02:00
f4ef256900 Program hardware context in L0 command queue
Related-To: NEO-4577

Change-Id: I204a5e86ad3b23b71071bbbfd58c23a408f6865f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-29 13:07:38 +02:00
3e8f05d702 remove kernelHeader from HeapInfo
Change-Id: Ic2d441df15a7f75b5f3ef41d484969148e59715f
2020-05-28 03:59:49 -07:00
23ad10731b Refactor hardware context programming
- expose programHardwareContext in CSR

Change-Id: I05caa352e3b7268c3e07edd6043316ecbb24f815
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-28 10:34:24 +02:00
fb15623d1a Add new clGetDeviceInfo queries
Add support for CL_DEVICE_OPENCL_C_FEATURES and
CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE queries.

Related-To: NEO-4368

Change-Id: I93e7906c360e0b62465f69bd0c8e93f3375474b1
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-27 11:25:57 +02:00
5eed521fe1 Update getInfo function
Allow return value size to be 0. Do not modify return value size in case
of error.

Related-To: NEO-4368

Change-Id: I201e8ee7c23fcdc2712f6b04bedc71bf4ab64f06
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-21 17:06:28 +02:00
cb8e9656ee Merge MemoryPropertiesFlags files
Move mem_properties_parser_helper files to memory_properties_flags_helpers
Rename MemoryPropertiesParser to MemoryPropertiesHelper

Related-To: NEO-4143
Change-Id: Ib35360bceff90be2383696083226f8be1e47538c
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-05-08 14:17:36 +02:00
c3ea485752 Add ClDevice function to query OCL2.1 support
Change-Id: I4a1e7def6b26241592dba4ecd4a6a6cb3bb69835
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-08 13:37:19 +02:00
7386801303 ULT renaming: Kernel tests
Related-To: NEO-2236

Change-Id: I5e7fdfa1fc4368bfb048594f3bd71cb0ef9e7511
Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2020-05-07 10:15:12 +02:00
8fd40b090d Add supportsOcl21Features value to capability table
Related-To: NEO-4368

Change-Id: If176d3be7c47d9d9ab70beebe664f2d569997501
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-05 15:02:50 +02:00
b0ed3b2ab1 Refactor MemoryPropertiesFlags
Rename:
- MemoryPropertiesFlags to MemoryProperties
- MemoryPropertiesParser to MemoryPropertiesParserHelper
- getMemoryPropertiesFlags to getFlags
- getMemoryPropertiesFlagsIntel to getFlagsIntel
- functions involved with MemoryPropertiesFlags

Related-To: NEO-4143
Change-Id: I4eec67bba95dd5354d0df43c31e6ca724909138e
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-04-28 18:15:25 +02:00
9453c5dc65 Rename duplicated filenames
Change-Id: Ifb30be582c0884d151b57c57a5b5fa77d2c64b57
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-04-23 09:48:58 +02:00
214585eb1b Add REQUIRE_SVM_OR_SKIP helper macro for tests
Change-Id: I07fbde14a0d3be801087561b8460b15b857c3f2e
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-01 15:59:18 +02:00
0f0a42de89 Pass root device index to all MockAllocationProperties constructors
Related-To: NEO-4512, NEO-3691
Change-Id: I631228191ca472e883b5233cb41ae8b6254588e9
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-26 11:34:47 +01:00
3acc6b0aab Remove platformDevices from helpers, kernel, memory_manager
Related-To: NEO-4499
Change-Id: Ic875857ced2a793bf300164d44db2dbc99d33572
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-24 22:22:40 +01:00
7a2310163e Remove platformDevices [2/n]
replace **platformDevices with *defaultHwInfo
replace *platformDevices[0] with *defaultHwInfo

Related-To: NEO-4499
Change-Id: If973ceb44ede2e940969f9c666f85d9a939fbff8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-24 15:26:34 +01:00
6174022ed1 Return CL_INVALID_OPERATION error
In clSetKernelArgSVMPointer and clSetKernelExecInfo functions
CL_INVALID_OPERATION error is returned if the associated device does not
support SVM.

Related-To: NEO-4368

Change-Id: I2a311d9307588ae992cee977b25df10841ebf668
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-24 13:16:07 +01:00