Commit Graph

108 Commits

Author SHA1 Message Date
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
Filip Hazubski e41731211a Update latestConformanceVersionPassed
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-11-23 16:13:44 +01:00
Filip Hazubski 59b74a8ea3 Do not provide -cl-feature option to the compiler
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-11-17 18:17:34 +01:00
Kamil Kopryk 77a5443f90 Add isMediaBlockIOSupported helper
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4848
2020-11-05 15:14:28 +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
Filip Hazubski c3b8727e97 Remove opencl includes from HwHelper
Resolves: NEO-3964

Change-Id: Ie891ba6a205a89b41ca2cce0fa386dc4c93a0aaa
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-23 11:10:52 +02:00
Jaime Arteaga 31291b1cf0 Add 4-digit zero alignment of device id in device name (2)
Unify names for OpenCL and L0

Related-To: NEO-4744

Change-Id: I5094f228f447ecbd942c25d6244abee593f3ffbf
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-22 15:53:20 +02:00
Slawomir Milczarek 8c4f3d3953 Add 4-digit zero alignment of device id in device name
Related-To: NEO-4744

Change-Id: Iedca3cb68c015e70bcebbeb2a45fdc2a8563518d
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-10-19 15:00:32 +02:00
Mateusz Jablonski 7c086c9fb4 Use StackVec instead of std::vector in ClDeviceVector
Related-To: NEO-5001
Change-Id: Icab72b5be9f32abf10efd93614768b256aa2ac2c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-16 17:51:40 +02:00
Slawomir Milczarek eb8f5fa301 Get CL Device Name with device ID appended at the end
Related-To: NEO-4744

Change-Id: I8a9a791a634f9c0c444695036d96e3c959c90de0
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-10-13 14:00:33 +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
Filip Hazubski 60430d79ee Update OpenCL C features reporting to the compiler
Pass features also with -cl-ext option.

Change-Id: I1a1c68b655a2108be51c7d57be771591ee0b14e7
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-05 10:27:30 +02:00
Filip Hazubski 90e858e5bd Update latest conformance version passed
Change-Id: I17b77b84a47a6e383082b0b35487bca8aaec05bf
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-01 17:29:49 +02:00
Bartosz Dunajski 55bd544402 Lazy evaluate arguments of printDebugStrings(...) function
Change-Id: Ie44e109fd9235c5df32fb90b9e6fc6058e558a99
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-25 18:38:58 +02:00
Filip Hazubski 7d532f4f98 Correct CL_DEVICE_OPENCL_C_VERSION value
Change-Id: I079ca39c06d04102872dd6c9c7b0013ae135c78d
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-09-25 16:38:26 +02:00
Bartosz Dunajski 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
Filip Hazubski d40510f398 Correct CL_DEVICE_MAX_NUM_SUB_GROUPS query
Change-Id: Ia7b9b041774513fdbfa2df9d1ad7c6d9dd60929f
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-09-11 10:54:46 +02:00
Filip Hazubski f3e9e943a3 Add new feature macros
New feature macros are:
__opencl_c_images
__opencl_c_fp64
__opencl_c_int64

Change-Id: Ibe4b01ea9799db1f201dc379a37cb661754795db
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-09-08 12:13:53 +02:00
Filip Hazubski fef4d05832 Add CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED query
Related-To: NEO-4990

Change-Id: I9d26b60ed824ca26d637519785b9c14f0677e4db
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-08-21 11:51:32 +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 d46ac4b420 Correct CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES value
Change-Id: Ib3aaa85e685916438de44477f54c33026e19019a
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-08-13 08:03:59 +02:00
Michal Mrozek c959847355 Expose sharing for sub-devices.
Change-Id: I72b715d2eacba0178ee64eb4f37043bd453cef85
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-08-11 12:22:10 +02:00
Filip Hazubski 49426afe48 Update cl.h
Add support for new CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES query.

Change-Id: Ia412faf99a5590a24be9a7fb31c22bf35d24e049
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-08-10 14:32:26 +02:00
Adam Cetnerowski af556aa65f Enable cl_khr_il_program on all platforms
Change-Id: Ifb05a7768d3c203dd5f8e32dabcf5f8c5bcac3ad
Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2020-07-08 17:57:21 +02:00
Mateusz Hoppe da3c9dba0e Check SourceLevelDebugger is non-nullptr before use
Change-Id: I0c270158e743ee8d301903d4ad3b6b9815a758b8
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-01 15:25:22 +02:00
Filip Hazubski c5f3fe5987 Add ClDevice::isOcl21Conformant function
Do not report support of OpenCl C 2.0 if device is not OpenCL 2.1 conformant.

Related-To: NEO-4368

Change-Id: I076d539506760953cc28eed39ff5e7585630df51
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-25 10:52:59 +02:00
Filip Hazubski 5dc3aed5b9 Add Debug flags to force Pipe and Device Enqueue support
New flags are ForcePipeSupport and ForceDeviceEnqueueSupport.
Flag DisableDeviceEnqueue has been removed.

Change-Id: I8794222ee26dc8001af29c45cb9f63381e18e5c4
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-24 17:31:48 +02:00
Filip Hazubski 0992c9342d Update ILs with version query
Related-To: NEO-4368

Change-Id: Ic8d51b444dcf1c4bd46b059babbf9e2b7e8a4cec
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-23 17:08:05 +02:00
Mateusz Hoppe 68847ef942 Create L0 debugger object
Related-To: NEO-4713

Change-Id: I9d10019bbe6e8514ce10bdd729a64ea233bf91b0
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-19 15:46:52 +02:00
Filip Hazubski 45f0bc56bc Add options when building the program
Report "-ocl-version=300" when OCL 3.0 is enabled.
Report "-cl-feature=" with list of supported features.

Related-To: NEO-4368

Change-Id: I9aee559ed53541a0f0c1a2a004926d9d29a53d94
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-18 18:54:50 +02:00
Filip Hazubski fe13f0b522 Move IFP support flag to RuntimeCapabilityTable
Remove HwHelper::isIndependentForwardProgressSupported function.

Related-To: NEO-4368

Change-Id: I97061620ee6e96c4666bb8af5f009129ff0d9175
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-18 16:51:58 +02:00
Lukasz Jobczyk 8f30d87a1e Unify release variables
Resolves: NEO-4719

Change-Id: Ib2ab959c0a1eb45f24a4e0e2f02c437d96d47751
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-06-18 08:56:29 +02:00
Filip Hazubski e6fb967945 Update CL_DEVICE_OPENCL_C_FEATURES query
Update query to return proper values.

Related-To: NEO-4368

Change-Id: Ie307429b3bf3a55fadd412a76a1eeb44e010aec8
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-15 18:05:44 +02:00
Filip Hazubski 851e894ab6 Update device caps initialization
Change-Id: I2488b2a07463efefaba03ff1d979cd7034f54136
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-14 19:18:39 +02:00
Filip Hazubski 4e2097e427 Add new clGetDeviceInfo queries
Add support for following queries:
 - CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION
 - CL_DEVICE_EXTENSIONS_WITH_VERSION
 - CL_DEVICE_NUMERIC_VERSION
 - CL_DEVICE_OPENCL_C_ALL_VERSIONS

Related-To: NEO-4368

Change-Id: I920671869fdb8815521173e2ec5ab3a4b905ec19
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-28 11:23:44 +02:00
Filip Hazubski 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
Filip Hazubski c64b7b4cb4 Add support for new device info queries
Related-To: NEO-4368

Change-Id: I4d8b6aa01435df1408a6051dca8dca29e84e95f6
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-25 11:57:12 +02:00
Filip Hazubski 94bff3fe42 Correct sub device related device info queries
When querying CL_DEVICE_PARTITION_PROPERTIES and
CL_DEVICE_PARTITION_TYPE correct value size is returned.

Related-To: NEO-4368

Change-Id: Ic0d9949dbd9c83de40a065da7c0e420b27120914
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-22 10:08:57 +02:00
Filip Hazubski 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
Igor Venevtsev 8529775429 Pass HardwareInfo to HwInfoConfig::getHostMemCapabilites() method
Resolves: NEO-4663

Change-Id: Ie87880cfc9de1d8950d59265db16e78464043ee6
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-05-21 12:39:12 +02:00
Mateusz Jablonski f30b072b59 Correct DEBUG_BREAK in cl device info
reference count should be equals to one only for root devices

Related-To: NEO-3691

Change-Id: Ic4b83782e68eaf1823abcf4a33819c6f2a4b483f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-05-21 09:34:58 +02:00
Sebastian Luzynski ac62fce964 Rename os specific function
Related-To: NEO-4638
Change-Id: I0380739b3f661894155768ebd96f7f20f784b842
2020-05-14 16:09:36 +02:00
Filip Hazubski 75b2cac097 Correct programming device info
Related-To: NEO-4368

Change-Id: I7bebb8754d7e653806f682f1931840f9bdb651ee
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-14 16:03:22 +02:00
Filip Hazubski b817d3e95a Enable overriding OpenCL version to 3.0
Related-To: NEO-4368

Change-Id: I6e2469861ca98649050b0f6251064ae6cce673be
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-12 17:32:00 +02:00
Filip Hazubski 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
Mateusz Jablonski bdf4fc1464 Correct number of exposed compute units
Related-To: NEO-3691
Change-Id: I7b2f199725c4f1621759486c462d7bd38e43f5ca
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-05-08 11:33:35 +02:00
Filip Hazubski 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
Filip Hazubski 85a5dcfe62 Add supportsPipes HW capability
supportsPipes set to false will disable support of Pipes on a device.

Related-To: NEO-4368

Change-Id: I2b03984d7618e85f482f8f8fa0fe3ef45ece7c19
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-05 12:12:08 +02:00
Filip Hazubski 22f9893495 Add debug flag to override device enqueue support
Enabling the new debug flag will disable support of device enqueue feature.

Related-To: NEO-4368

Change-Id: Icd17b44986bb682873364a2603633b7e44723a06
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-04 11:01:14 +02:00
Andrzej Swierczynski 4c616f8bef Return 0 when Read-Write images are not supported
clGetDeviceInfo and clGetSupportedImageFormats return 0 when Read-Write
images are not supported

Related-To: NEO-4368

Change-Id: Iabeb3ca35fbdd1ab6eb8497dbcc94bb6876d8f42
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-04-22 19:58:14 +02:00
Andrzej Swierczynski 42810f4690 Return 0 when Program Scope Global Variables are not supported
clGetDeviceInfo and clGetProgramBuildInfo may return 0 when Program
Scope Global Variables are not supported

Related-To: NEO-4368

Change-Id: I2c319c53ffa2e02eeb370775023f5d73219cb39e
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-04-21 18:40:10 +02:00
Mateusz Jablonski 0c404bc880 Pass device bitfield to allocation properties when creating mem obj
Related-To: NEO-4484
Change-Id: I961e9122591dc7293e37d5c1ca58cbcd649ee653
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-16 15:01:37 +02:00
Filip Hazubski f2c11eb870 Update sub device internal ref counts
Change-Id: I82eea99bbb3d1edc32d09c0b703dee30b62f6b76
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-03 15:10:11 +02:00
Piotr Zdunowski 52704236bd Disable cl_khr_subgroups extension on gen12.
Resolves: NEO-3622

Change-Id: Idab55e5fb6a51ea0a08714f447bb9fce85f1dbcd
Signed-off-by: Piotr Zdunowski <piotr.zdunowski@intel.com>
2020-04-03 11:27:24 +02:00
Slawomir Milczarek 9022912a6d Check for image support in VA media sharing
Related-To: NEO-4473

Change-Id: I6015d67215267b1dcde1e885cf3696af10ea5e7d
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-03-31 07:29:13 +02:00
Piotr Zdunowski b3553c36dc Revert "Disable cl_khr_subgroups extension on gen12."
This reverts commit f99aaf4795.

Change-Id: Iee3434ecd8b235719ff7e4b6bad9fb0cc2deaf59
Signed-off-by: Piotr Zdunowski <piotr.zdunowski@intel.com>
2020-03-26 09:58:58 +01:00
Piotr Zdunowski f99aaf4795 Disable cl_khr_subgroups extension on gen12.
Resolves: NEO-3622

Change-Id: Iaf94e262c8342c70c1b8c0f966020b3159a3cccf
Signed-off-by: Piotr Zdunowski <piotr.zdunowski@intel.com>
2020-03-25 17:48:35 +01:00
Filip Hazubski fe851da327 Rename device directory
device directory is renamed to cl_device.

Related-To: NEO-3938

Change-Id: I96794c82632d042da6814550597d805df7bb6436
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-24 14:35:21 +01:00