Commit Graph

209 Commits

Author SHA1 Message Date
b07f0e81b7 Store multiple Kernels in MultiDeviceKernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-17 10:27:03 +01:00
264f20ea00 Pass EngineTypeUsage to OsContext creation
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-03-16 10:21:18 +01:00
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
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
047a93fde6 Update getExtraMmioList method
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-08 11:25:40 +01:00
8fa97ed4a8 Fix shared buffer object size
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-03-02 14:08:47 +01:00
8a700c5187 Move non-ult shared files to single directory
Add SKIP_SHARED_UNIT_TESTS flag

Related-To: NEO-5201
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2021-02-10 21:03:13 +01:00
0871c1bb76 Adjust clGetKernelWorkGroupInfo api call
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2021-02-05 10:58:00 +01:00
320a404a91 OpenCL Queue Families extension 15/n
Add queue family name.
This change will break backwards-compatibility.

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-02-04 11:34:35 +01:00
51fd5c5e3a Validate D3D sharing formats
Related-To: NEO-5486

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-03 10:35:10 +01:00
edf339fdf1 Fix checks for image mip level in OpenCL builtins
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-01-22 10:24:39 +01:00
c27d8c8dfd Wait for all gpuAllocation in clMemBlockingFreeINTEL call
Related-To: NEO-5422
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-01-20 10:28:32 +01:00
2d033f5dea Update UltDeviceFactory
Use MockMemoryManager by default in UltDeviceFactory.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-01-13 17:22:23 +01:00
c3083592ad Set arg immediate for all Kernel devices
convert tests to multi root device scenario

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-18 15:56:23 +01:00
4948c39d39 Remove executionEnvironment from KernelInfo
Related-To: NEO-3739
2020-12-16 14:56:57 +01:00
b2cae02f66 Add kernel fixture with stateless indirect access
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-15 13:23:37 +01:00
aa1fc85257 Store device specific kernel members per root device
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-10 17:57:39 +01:00
e7772143a2 Add fixture with a simple stateless copy kernel
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-09 17:03:05 +01:00
b6a20f9b23 Move mock_gmm and mock_gdi to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-09 13:45:57 +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
ff027615c9 Refactor ULT, dont create parameterized tests for single config tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-03 13:51:57 +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
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
84f3d44968 Enable memory transfer between buffers rect
Unlock flow for multi device setup in:
- enqueueCopyBufferRect
- enqueueReadBufferRect
- enqueueWriteBufferRect

Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-11-30 10:35:34 +01:00
6c4b1f951c Do not force cl_khr_3d_image_writes extension when compiling kernels
Update usage of SUPPORTED_IMAGES flag and do not use images when disabled.
Use SUPPORTED_2_0 only on fully OCL 2.1 conformant platforms.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-11-27 17:20:46 +01:00
baea633bdd Correct logic in MultiRootDeviceFixture
Related-To: NEO-4589

Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-11-27 16:22:39 +01:00
7ec69c33f9 Store SSH per root device in Kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-24 17:57:31 +01:00
2003fe46a6 Don't store Context in Kernel
reuse Context from Program

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-19 13:38:18 +01:00
28de4068c9 Read bindless offset from patch token
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-11-18 17:04:00 +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
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
40d5cc71c9 Windows includes cleanup
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-11-09 14:35:38 +01:00
3d9a180c12 Implement local memory path for all devices in buffer
Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-11-05 15:01:58 +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
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
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
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
9f08a60a20 KernelInfo Refactor
Using kernelDescriptor.kernelMetadata.kernelName instead of
kernelInfo.name

Change-Id: I11f5721d8072a3beccb573cec4bea56cf14cf0f9
2020-10-20 13:18:09 +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
2ebee73e4b Unify bindless debug flags
Change-Id: I6a9313722eed01b935707e93cad532adddcc78af
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-10-09 14:49:50 +02:00
fc090f74c6 Store device binary per root device in program
Related-To: NEO-5001
Change-Id: I9834f6894625031c734c68ebf210e6042c470ec7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-08 19:05:04 +02:00
7d0f23bfc9 Enable OpenCL 3.0 by default on all devices
Change-Id: Ic5e46177c957896c499b7aa6727af48105b664ac
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-07 16:44:10 +02:00
28ef5fa709 Move pipecontrol w/a estimation to dedicated class
Change-Id: I8ceaa2dff94dd7148daf921568fd30f098e5dae4
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-06 15:02:37 +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
e34c319ed7 Special address pool at External heap begining
Change-Id: I7da6e67010ff7a819aec25abea9213b6e43e348e
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-09-29 07:51:12 +02:00
5b31b31734 Remove low priority and internal engine index variables
Change-Id: I984dbcedd5456cfdee284f4d2eda1371ba77f0d0
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-21 16:44:14 +02:00