Commit Graph

307 Commits

Author SHA1 Message Date
Jaroslaw Chodor f057712fa7 Program refactor
* decouple program_info
* move global allocations relocation to linker
* remove obsolete tests
* initial cleanup to kernel_info kernelInfo
* unified patchtoken validation

Change-Id: I0567cd6d607b4f3cf44e6caf33681f6210760f76
2020-01-25 10:56:30 +01:00
Filip Hazubski 9c16c1a425 Add clGetKernelMaxConcurrentWorkGroupCountINTEL
clGetKernelMaxConcurrentWorkGroupCountINTEL replaces clGetExecutionInfoINTEL
function.

Change-Id: I7e3461695de7ee4c0e43c3e9770724b025c0e2be
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-24 11:55:28 +01:00
Filip Hazubski a60aa092f8 Rename clEnqueueNDRangeKernelINTEL to clEnqueueNDCountKernelINTEL
Change-Id: Ibe46bd94a93290b0b6cef0c10aa98e024fc17324
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-23 15:46:13 +01:00
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
Maciej Dziuban 3c27e97c43 Extract gl mocks to windows directory
Change-Id: I963032bfad880e42100f6233b9570cefb607f26c
2020-01-21 12:07:13 +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
Katarzyna Cencelewska 1b072cf170 Add error code for get device info relative to images
if image are not supported

Related-To: NEO-3931
Change-Id: I527da2dc857cd15dae6535dd389378511eb71b6d
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-01-16 16:30:13 +01:00
Krzysztof Gibala e2d7634dd5 Remove limitation for write combined flag
Allow usage of WC in clHostMemAllocINTEL & clSharedMemAllocINTEL

Related-To: NEO-3374
Change-Id: I82f0be3f67b26bd19195d374b40f73e8f8a50b01
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-01-15 17:42:53 +01:00
Katarzyna Cencelewska 236ac104bb Add use of device from context instead of platform in clCreatePipe
Change-Id: I2c42275183b7f5a096240905e7e14d39afcf9104
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-01-14 16:30:14 +01:00
Katarzyna Cencelewska 0f6248d7ac Modify restrictions to support some extensions
Change-Id: I7d94249654b5e6aedcf48a4626f59b780dfebf53
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-01-13 19:29:59 +01:00
Mateusz Hoppe 01d8532f52 Move files to core
- wddm_allocation.h/.cpp
- os_context.h
- residency_container.h

Change-Id: I9f933a09d1142f86550c0d67626f0719b6450303
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-13 18:25:00 +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
Katarzyna Cencelewska a123cce3e8 Add return CL_INVALID_VALUE from clSetKernelExecInfo
if attempt to set invalid ThreadArbitrationPolicy

Change-Id: I8208f9b6761c4dafb6ef4cbde550314778ab505e
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-01-08 16:19:43 +01:00
Mateusz Jablonski 84f2185f7c Test non-default root device in api fixture
Define max number of root devices in ults
Resolves: NEO-4000

Change-Id: Ia8da5c22a36dca3c493a9caf836fc1fb29207ef9
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-30 15:28:00 +01:00
Jobczyk, Lukasz 2ef557bf68 Add support for unrestricted size flag in the USM
Resolves: NEO-3960

Change-Id: Ie3557de70702b5aee53cc7c08ed602e580282979
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-12-19 15:46:34 +01:00
Dunajski, Bartosz 2c63a956ad Simplify PerfCounter initialization
Change-Id: Ia393088a80ac7b439efb5e40b70e593e3891cbc5
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-19 14:25:45 +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
Krzysztof Gibala 03252ee9fe Add support for write combined in unified memory
Related-To: NEO-3374
Change-Id: I610ad2d71b056f2bc5b8f4bda72e7f08a45cf59d
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2019-12-16 08:59:40 +01:00
Dunajski, Bartosz 0aea86d001 Accept CL_MEM_FORCE_LINEAR_STORAGE_INTEL token
Change-Id: I3574854c133cdab427fd0389ecc464c4e97c7328
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-13 16:10:15 +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
Mateusz Jablonski 5fa53f4516 Move headers to core
- address_patch.h
- options.h
- registered_method_dispatcher.h
- grf_config.h

Rename OCL_RUNTIME_PROFILING -> KMD_PROFILING

Related-To: NEO-3982

Change-Id: I06cf72729e9d7d7d2ff0bd169fcbada00c4b509a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-10 12:19:29 +01:00
Mateusz Jablonski e27c5a9475 Change signature of clAddCommentINTEL function: pass device instead of platform
Resolves: NEO-3939
Change-Id: I394ef7c2370771569a0ec50ac4644782ce8a384f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-09 17:20:04 +01:00
Mateusz Jablonski 16c6d7eb9b Refactor ApiFixture
- setup number of root devices
- define tested root device

Related-To: NEO-4000

Change-Id: I785d07a7f54932f66fe57637c8d10775743a871c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-09 16:32:44 +01:00
Mateusz Jablonski 8ccadbb240 Correct clGetDeviceIDs: return all requested devices
Related-To: NEO-4000
Change-Id: I2723b5364bf742aa490d88967c19329830f45322
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-09 15:41:06 +01:00
Jaroslaw Chodor 72a1542140 [2/N] Program refactor - gather compiler options
Change-Id: I0a614be73fbd87184be2dfea407582a58c27b0bc
2019-12-06 22:17:19 +01:00
Dunajski, Bartosz 566b845bbc Move state_base_address to core
Change-Id: I2b64fff4eed31054ae29b7b14ecb9f147914049a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-06 09:01:24 +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
Filip Hazubski 7be937c226 Update clCreateSubDevices implementation
Make it possible to get SubDevices from given RootDevice.

Resolves: NEO-3977

Change-Id: I9cf06f17b45299009ab6953b9ad7d5cb0bbe848f
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-12-04 16:38:07 +01:00
Mateusz Jablonski 73dad03c66 Fix clSVMAlloc function: use device from context
Related-To: NEO-4000

Change-Id: Iefad9d7a8908a584b98801bdbe13aa1e0be2e47f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-04 16:27:54 +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
Michal Mrozek 6847893e02 Add support for querying device from usm allocations.
Change-Id: I8aad69622e3af1ebec74ee9d325340b02ca9a6b2
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-12-04 09:28:06 +01:00
Mateusz Jablonski 54f65c0243 Move headers to core
- hw_info
- hw_cmds
- kmd_notify_properties
- completion_stamp
- bxml_generator_glue

Related-To: NEO-3982
Change-Id: I3ed3ef81f42596f381e60c19250f6eb1296d47a4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-02 14:20:45 +01:00
Jaroslaw Chodor 355e8d3e5a [1/N] Program refactor - decouple from patchokens
Change-Id: I63bbf6c31a5db9e788124f22b6105e65c16c86d4
2019-11-25 19:46:21 +01:00
Mateusz Jablonski 3e1b15c31d Move initialization of AubCenter to RootDeviceEnvironment
make RootDeviceEnvironments vector of unique_ptr

Related-To: NEO-3857

Change-Id: I23998502198307c8535cdd5c9c4af5223a5d69a5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-11-19 11:30:16 +01:00
Filip Hazubski 717246e26f Rename clGetExecutionInfoIntel
Related-To: NEO-2712

Change-Id: Ie3718affcb3a0caad6e98a9e2850362bd2caed6d
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-19 09:08:47 +01:00
Michal Mrozek 6646bd81a7 Check for max allocation size while allocating USM.
Change-Id: I870ffd5d8716dc50ac064666b54f5fa92d8beca3
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-11-18 17:01:04 +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
Michal Mrozek 06941a51af USM - add new API for memory fill.
- This API will eventually replace memset API

Change-Id: I33bb43904d76a56f74493f2567a8526f7f2c1ee4
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-11-15 10:56:41 +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
Mateusz Jablonski d408b82a19 Move aub center and command stream receivers to root device environment
resize root device environments to 1 by default

Related-To: NEO-3691, NEO-3857

Change-Id: Idf3d61e84f8265f30381c18216632d0ffb2a16de
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-28 14:40:43 +01:00
Jaroslaw Chodor 28464ab2d4 [N/N] compiler interface refactor - move to core
Change-Id: I029e3cd7a6adde9df97a0a7760ecbf5d25d8f501
2019-10-22 19:14:09 +02:00
Gibala c6e13fdc67 Prevent null allocation in createUnifiedMemoryAllocation
Related-To: NEO-3860
Change-Id: I4b11db679385393a9059af41d71a8ce9c3f9fdc7
Signed-off-by: Gibala <krzysztof.gibala@intel.com>
2019-10-22 13:32:52 +02:00
Mateusz Jablonski b93817fe7c Use DeviceHelper to calculate number of sub devices
Related-To: NEO-3691

Change-Id: I390b7919fe8960b74cf290923f5daf128d824674
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-21 15:40:18 +02:00
Jaroslaw Chodor 90e5cf164c Moving hash and file_io to core
Change-Id: I1e6eece53fadf62a8919aa41e04deee3dac2ce60
2019-10-17 13:16:20 +02:00
Chodor, Jaroslaw 856e5c6aaf [1/N] compiler interface refactor
Decouple compiler interface from Program object

Change-Id: Ibd63c6eee01d85527318ccad52e52f5487d3402e
2019-10-16 16:17:13 +02:00
Mateusz Jablonski 37bd67e791 Correct getting engines from device with sub devices
use first sub device to take engine for low priority or blit operations

Related-To: NEO-3691

Change-Id: I29737df06cc764a10a22a41017ab827cde7960b8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-16 14:32:02 +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 62d5ed2c08 Store a unified memory flags
Related-To: NEO-3610

Change-Id: Ie9f924f188d4024c7355b7655fea231229b4bf6a
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-30 16:06: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