Commit Graph

124 Commits

Author SHA1 Message Date
Filip Hazubski
8d34f40aad Add clGetKernelSuggestedLocalWorkSizeINTEL
This function can be used to query local work size that would be used in
case of querying ND range kernel with local_work_size set to NULL.

Change-Id: I86ac7c97cffb6c3e11b673a28285739edfabb4a6
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-23 13:50:37 +01:00
Filip Hazubski
0b141ed4ea Add KernelExecutionType
Add possibility to set Kernel execution type via clSetKernelExecInfo.

Change-Id: I2de0bf4e067921440e34e14c6975f640d3f47162
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-22 14:40:36 +01:00
Filip Hazubski
8fcff2241f Add ClDevice
Decouple cl_device_id from Device class.

Related-To: NEO-3938

Change-Id: I68543a753aea562f3b47ba0d23a059ff3cffa906
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-17 12:43:11 +01:00
Mateusz Hoppe
81e9591c31 Refactor ImageInfo 2/n
Change-Id: I5e6081a75b802cc98fd89e384d550a219353728b
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-10 14:20:31 +01:00
Maciej Plewka
8803b4cd4e Move grf size to HwInfo
Change-Id: I65ee879644573586d63092b487f8b5ea0cedf1e3
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-12-17 17:27:21 +01:00
Mateusz Hoppe
f0a6f6b057 Move DebugSettingsManager to core
- pass registry path in constructor

Change-Id: I2a121da2c9483a0df088989feea490a638c63016
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-12-17 10:39:53 +01:00
Dunajski, Bartosz
a611e4b97d Fix Image patching
Change-Id: Ibd89ecf18b92ed20972352f2aa39121b4b811d81
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-16 17:41:20 +01:00
Cencelewska
230d808021 Add mechanism to dynamically assign thread arbitration policy by one kernel
-use clSetKernelExecInfo with param
 CL_KERNEL_EXEC_INFO_THREAD_ARBITRATION_POLICY_INTEL
 to change default value of ThreadArbitrationPolicy

Change-Id: I15d0de0840ed14687c16ae04890b662bc157de76
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2019-12-11 09:30:33 +01:00
Dunajski, Bartosz
3eab5cfe35 Patch flat image params on setKernelArg
Change-Id: Iae0f37dfcd2ee14a3874835f2e444549d1769074
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-11 08:18:55 +01:00
Filip Hazubski
82bc594af0 Add clEnqueueNDRangeKernelINTEL API
Related-To: NEO-2712

Change-Id: If1d16d9d626871a9dc4b19282f9edc5786ffa398
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-12-04 17:11:28 +01:00
Dunajski, Bartosz
dfc50f3a75 Move gmm_helper to core
Change-Id: I31ca317d10697ab884e04f443c8ccfdd6ca9d2ae
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-04 15:25:32 +01:00
Jaroslaw Chodor
355e8d3e5a [1/N] Program refactor - decouple from patchokens
Change-Id: I63bbf6c31a5db9e788124f22b6105e65c16c86d4
2019-11-25 19:46:21 +01:00
Igor Venevtsev
63fd26f6d6 Always specify rootDeviceIndex for graphics memory allocations
Related-To: NEO-2941

Change-Id: Ia2362fd6b4e72ede02919152475f40b3edbc3658
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-11-15 15:14:41 +01:00
Filip Hazubski
5f021afd6d Move HwHelper to core directory
Change-Id: I2c78a8b737ee8e61b917b4918da37e77bbd9fe34
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-15 14:06:40 +01:00
Filip Hazubski
487c4c6e4b Add UNUSED_VARIABLE helper macro
Change-Id: If293ad33899ee4feb79424c351b13ea85306c603
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-14 17:42:56 +01:00
Kamil Kopryk
8bd641c418 Fix for stateless offsets
Change-Id: I32a252065bb667df9c92ff41601db0556b7d156b
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-3314
2019-11-14 15:06:58 +01:00
Filip Hazubski
4b2a8e99d8 Add clGetExecutionInfoIntel API
This API allows querying for execution related information.
CL_EXECUTION_INFO_MAX_WORKGROUP_COUNT_INTEL parameter allows to query for
maximal work group count that is possible to run concurrently on the device.

Related-To: NEO-2712

Change-Id: I4e6b4c80aeb06ff966fb543c0a7f05ed54416dab
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-13 12:09:40 +01:00
Michal Mrozek
fb409e87fc Do not detect pointers as buffers.
Change-Id: I43cf354ad7de9dd802759f7cf6fdb15bec679349
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-11-06 15:09:12 +01:00
Dunajski, Bartosz
3aeaaf6eb3 Disable Image transforms on gen12
Change-Id: I8a62b06d0ef6a5a75fac499158a45d8486bfdd2f
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-10-23 12:33:19 +02:00
Gibala
2f9bfc7748 Remove OCL object from MemoryProperties 10/n
Add cl_mem_flags, cl_mem_flags_intel and wire it in mem_obj.
Refactor:
- validateMemoryPropertiesForImage
- validateExtraMemoryProperties

Related-To: NEO-3132
Change-Id: I90fac5fc00e24fc67346109a1fe6f269ef51e1e0
Signed-off-by: Gibala <krzysztof.gibala@intel.com>
2019-10-10 10:19:47 +02:00
Filip Hazubski
81cd28e0f4 Add Math::divideAndRoundUp helper function
Add usage of the function where applicable

Change-Id: I9c41ad37009d1f088fa1917d30525194a10d3061
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-10-09 13:25:39 +02:00
Jobczyk, Lukasz
3bd4baeba3 Move a unified memory manager to the core dir
Related-To: NEO-3677

Change-Id: Ib60dea2bcaaf5feea97d61cb9f54baee4c6b4b64
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-27 10:46:35 +02:00
Dunajski, Bartosz
9d6dcd6fff Use Kernels maxKernelWorkGroupSize to compute WG size
Change-Id: I947b5612f36cd2437e1ead98712c914ffe4b5b15
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-09-17 08:39:05 +02:00
Dunajski, Bartosz
ca94628058 Refactor setting max workgroup size for Kernel
Change-Id: I2a489d60a3ec9ee363c10e3a5f12b6c7ba4e8dd8
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-2946
2019-09-16 19:44:56 +02:00
Jobczyk, Lukasz
523d2af942 Get a Memory Manager directly from an Execution Environment
Change-Id: I11fcdc08928405eed4efe3ead2f863fa30cf1427
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-10 10:35:30 +02:00
Jobczyk, Lukasz
882a216688 Move Debug helpers to the core dir
Related-To: NEO-3677

Change-Id: I2c98595190fadfa8ffd9e378e774c0d4485cbf9e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-05 16:00:35 +02:00
Mrozek, Michal
15ba4b6788 Add function to check whether resolves are required
Change-Id: I0f81a4101b626ad7ddc17f19daabdf7a15c34467
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-09-05 13:25:24 +02:00
Jobczyk, Lukasz
76fe09c2a9 Handle page faults while accessing unified memory
Related-To: NEO-3330

Change-Id: I7e21f894e9d1c82598954c49342d1f65af07498f
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-04 13:28:53 +02:00
Mrozek, Michal
0666da693e Improve uncached flag.
- When resource is uncached for surface state and not used in stateless manner
then it doesn't need to flush cache
- Minor cleanup

Change-Id: I4cfe5a6fe3e666200407d9acdd89e6f64b2b3eed
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-30 12:17:27 +02:00
Mrozek, Michal
ae201a47d3 Improve uncached resources handling.
- Change kernel to properly detect true stateless resources
- do not turn of stateless l3 if arg is used in pure stateful manner
- refactor variable names to better reflect what they do
- improve mock kernel with internal to have setKernelArg capabilties

Change-Id: I2cdde04f2144d9b86dc1486126632db0fd7cad49
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-30 10:51:28 +02:00
Mrozek, Michal
33f6c7f0da Add new flag to disable L3 for stateful accesses.
- With this flag resource will not be cached in L3 for stateful accesses.

Change-Id: Icf9a393ab92d55c2cdf30444420ea40da0d5630c
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-29 23:38:26 -07:00
Dunajski, Bartosz
1518774fe6 Use stateful args programming for aux translation kernels.
Set valid mocs values

Change-Id: I8de2bbdd72b102a1623b9e397485ef52ecca8306
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-14 14:52:46 +02:00
Pawel Wilma
d35c20f430 Collect patch info for scratch/global/constant/private
Related-To: NEO-3342

Change-Id: I0b594219cedf5d13d1eb70514816e8048938772e
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-08-14 13:52:28 +02:00
Jim Snow
4360aff03c Move runtime/helpers/aligned_memory.h to core/helpers
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
Change-Id: I15de094c51d4eb18bfff4d17fd34e817b5525fda
2019-08-06 23:56:24 +02:00
Mrozek, Michal
f0d3b47886 Turn on caching if buffers are set as constant args.
- If resources is constant arg it means it will only be read
- Therefore even for read_write buffer we may turn on caching.

Change-Id: Id2c34d4993111bf5c6523a1946464c397db95686
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-31 14:56:56 +02:00
Piotr Fusik
2548bea71d Minor clean-up.
Change-Id: Id1523930fc8aedf85506e254c67f6b1ca8dd020d
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-07-30 11:53:20 +02:00
Piotr Fusik
dcd8728519 Use range-based for.
Change-Id: I758f6d5fcbf75baae454dedc9467532bc0b8c9d5
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-07-30 07:57:43 +02:00
Piotr Fusik
a141911e19 Correct misspelled identifiers.
Change-Id: Ifa629c0d6bb1b04b5cfde908f2672ef1843043f0
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-07-17 17:45:52 +02:00
Mrozek, Michal
0440b86d05 Rename SVM Memory Manager to Unified Memory Manager.
Change-Id: I1d7637a5aaca3ef5190c4f6303c81060f95744a9
2019-07-12 11:22:09 +02:00
Chodor, Jaroslaw
ce061a48ef Support for symbol/relocation tables
Change-Id: I87890f6dc36a3454ffdcab1fb9d070fdaf91e689
2019-07-10 16:51:43 +02:00
Milczarek, Slawomir
6b77f94275 Extended DRM memory manager with function to copy memory to allocation
Related-To: NEO-2687

Change-Id: I2cd20c1d59dc0c28609fca7a11a5d805e2f21de4
2019-07-10 11:02:21 +02:00
Dunajski, Bartosz
bb6dfd4fe6 Add debug flag to disable aux translation
Change-Id: I1f3a2941de44e9fe793ef3f1c6425c80293cc63a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-25 12:03:52 +02:00
Mateusz Jablonski
7a3b2e583b Use GPU pointer when programming constant/global surfaces
Related-To: NEO-3127

Change-Id: I29fd5e3f3f370c21a20f403f66c0a3604be884fd
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-21 14:20:22 +02:00
Mrozek, Michal
3a75c4fb71 [7/n] Unified Shared Memory.
- Add basic allocation support for shared allocations
- Add kernel support for shared allocations.

Related-To: NEO-3148

Change-Id: Ie0523acc3a444eef6a5aeb6a56a041280df6a02e
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-18 09:17:16 +02:00
Mrozek, Michal
e279804c0c [6/n] Unified Shared Memory
- Move definitions to core folder.
- Add tests for core related code.

Change-Id: I9ae0473f965ba56cbe2f5458160b8a24d06595ae
Related-To: NEO-3148
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-18 07:18:18 +02:00
Mrozek, Michal
2e8e625024 [5/n] Unified Shared Memory
- Add kernel support for host um allocations
- During make resident call choose only appropriate resources for residency
- change resource types to binary bit friendly values
- enhance memory manager to only make resident compatible types

Related-To: NEO-3148

Change-Id: Ic711a4425a0d8db151a335e0357440312dc09b7e
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-17 15:47:30 +02:00
Mrozek, Michal
a5c4956bbd [3/n] Unified Shared Memory
- Add vector of UM allocations to kernel that will be accessed indirectly
- Wire in support to clSetKernelExecInfo

Change-Id: I5858f2a93ab957597f3131022daee3741c3453ab
Related-To: NEO-3148
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-14 15:05:39 +02:00
Mrozek, Michal
be48b56732 Kernel refactor.
- Change function names to indicate they work on SVM allocations.
- Remove one function used only in tests.

Change-Id: I9b18d9fee3d4f2a46a7f458ca73d39b3863ce6d3
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-14 10:27:21 +02:00
Mrozek, Michal
8e969684f1 [2/n] Unified Shared Memory
- Add kernel flags specifying indirect usage of device allocations.
- make device usm allocation resident when kernel requires this

Related-To: NEO-3148

Change-Id: I689347a0ea9b0f84c83f7883ca2381be63c61af9
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-14 09:56:40 +02:00
Jaime Arteaga
b98b51b0d9 Move ptr.h to core folder
Change-Id: Icf0db7c767b2b1ea44fccc02b135f0f6c1f78c8f
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2019-05-29 00:11:34 -07:00