Commit Graph

60 Commits

Author SHA1 Message Date
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 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
Mateusz Hoppe 5685b285f3 Extract logging logic from DebugSettingsManager
Change-Id: I0ccc68216c1c3bb23d0389bec17124e09e4f98e1
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-12-13 15:34:45 +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
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
Jaroslaw Chodor 355e8d3e5a [1/N] Program refactor - decouple from patchokens
Change-Id: I63bbf6c31a5db9e788124f22b6105e65c16c86d4
2019-11-25 19:46:21 +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
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
Daria Hinz 375681ae12 Move Preamble Helper to core
Change-Id: I7d1bf567a67dc93c10d396aeb48ad1179b5b8ecb
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2019-10-03 13:54:17 +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 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 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 9a67b2d784 Add flag to kernel that specifies whether stateless writes are used.
- currently no compiler support yet, hence it returns true.
- minor cleanup of kernel tests.

Change-Id: Ic153810b1a6062d0bae22d6faab5db601764dd98
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-23 11:56:04 +02: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
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
Mateusz Jablonski 223b998d92 Handle PATCH_TOKEN_MEDIA_VFE_STATE_SLOT1 patch token
Related-To: NEO-3190

Change-Id: I3e357f7e21a58e5bd2aa8cb8005b720c690664f2
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-28 01:48:50 +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
Mrozek, Michal 22c2c9b02c Change the size of aux translation transfer.
Change-Id: I9b34babf26eee217c203d0c09d819765a45a9506
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-04-20 15:45:07 +02:00
Maciej Plewka 9e52684f5b Change namespace from OCLRT to NEO
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00
Maciej Dziuban cd62be59e1 Add allBufferArgsStateful field to Kernel
Change-Id: I885ede725830964374421eff621cf01cecc4b17e
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-03-21 14:24:36 +01:00
Maciej Plewka e53a8e8709 Add postSyncAddress to flush after walker
Change-Id: I7fdfaf8e0acc365998cc74306ab715ea3d9c7d72
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-04 14:47:53 +01:00
Filip Hazubski 8b57d28116 clang-format: enable sorting includes
Include files are now grouped and sorted in following order:
1. Header file of the class the current file implements
2. Project files
3. Third party files
4. Standard library

Change-Id: If31af05652184169f7fee1d7ad08f1b2ed602cf0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-27 11:50:07 +01:00
Chodor, Jaroslaw 43856e88b5 Refactor around cache flush and command queue
Change-Id: I277e27cbc60fbbb015c0024f171697408879ec0b
2019-02-10 17:59:33 +01:00
Kamil Diedrich 62e56d2398 Disable L3cache when resolve argument
Change-Id: I4bb3a18d67254eef8aa4a0ce6b29401726f0b47e
2019-02-06 15:51:31 +01:00
Chodor, Jaroslaw 048098ce66 Refactor around cache flush after walker
Change-Id: If5c7399df91bd076b684bcab83f50b4852e53429
2019-02-06 11:12:55 +01:00
Filip Hazubski d30cc221df Update disabling caching for a resource
Change-Id: I00eac0add01f75a1b82d04cf42652c15b776a457
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-01 10:50:21 +01:00
Chodor, Jaroslaw 7d04159f76 Refactor around cache flush
Change-Id: Iff32af0111375f4ffc804c82e6d753d57fe94e80
2019-01-31 22:19:06 +01:00
Mrozek, Michal f6ceb8fb4f Remove default parameters from setArgSvm function.
Change-Id: I4408ddedfca464d56e24c4daa0c8c7b73791d6a0
2019-01-28 12:02:54 +01:00
Kamil Diedrich 4b1871bf0e Add pipe control before and after buffer translation
Change-Id: I4ee32c410e1ac2bcdb3ceae203cd461de79146a5
2018-12-20 09:30:53 +01:00
Zdanowicz, Zbigniew 3dca095ccf Add cache flush command after WALKER command
Change-Id: I3983dc6c0797047e17cc8189655a22a22e85892b
2018-12-19 13:15:33 +01:00
Kamil Diedrich b2e0195663 Change Buffer to MemObj in BufferForAuxTranslation collection
Change-Id: Icbdb8fecaa3fd8e19e993502f59c76156fe4ad2c
2018-12-19 08:05:51 +01:00
Piotr Fusik 76efeae9d8 Pass more information to programPipelineSelect.
Change-Id: Iaabe60742269b721f8defe71306dd6e87d60d546
2018-11-15 11:45:45 +01:00
Pawel Wilma e06aa17dfc Grf configuration
Change-Id: I3741f53a38c6707b0c8ad82ae553ea65ae6917e4
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-09-27 17:57:19 +02:00
Artur Harasimiuk 40146291ad Update copyright headers
Updating files modified in 2018 only. Older files remain with old style
copyright header

Change-Id: Ic99f2e190ad74b4b7f2bd79dd7b9fa5fbe36ec92
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-09-20 18:02:35 +02:00
Maciej Dziuban e0e48203d2 Move BuiltIns to ExecutionEnvironment
Change-Id: Ib2a1b82cc7858c898bb32820aad106a01d1325ad
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-21 23:15:47 +02:00
Woloszyn, Wojciech 53d99ead24 Fix sampler lifecycle
- Add refcount to sampler to avoid use after free

Change-Id: I0f03d8ed29b5b9dc5bee355ed266ac7437e92509
2018-08-13 10:13:08 +02:00
Dunajski, Bartosz 117a7d15ad Aux translation [2/n]: Add new builtins
Each Kernel arg for aux translation needs to have own builtin kernel.
This is required to build MultiDispatchInfo before copying into SSH

Change-Id: I4b2f42518cf06bb31c31fd5f83f7da927bde99c3
2018-08-10 18:24:21 +02:00
Dunajski, Bartosz b4f53fdfa7 Pick applicable buffers for aux translation
Change-Id: I60a28cd9e0dec61120b1ae5c42dfe0cb852eb387
2018-08-08 09:23:51 +02:00
Mrozek, Michal dfd331c568 Add logic to detect if kernel is using only images as arguments.
Change-Id: Ia897a1838761c452c36c3f7821149b5867c3cd70
2018-08-07 13:39:41 +02:00
Dunajski, Bartosz ec6f0f9f86 Aux translation [1/n]
- Mark Kernel for aux translation
- Initial implementation of dispatchAuxTranslation for future use

Change-Id: Ifca1c9a893876eecc5678cdc4f564b2bfcae959a
2018-08-07 09:07:25 +02:00
Mateusz Jablonski 9ae4f390d1 Remove command queue, completion stamp and device from mem obj
Remove setCompletionStamp function from Surface

Change-Id: I25f3040a91892495e55cb4924f1538276de6264e
2018-08-01 16:17:13 +02:00
mplewka dccee618be Handle when gtpin kernel start offset is not zero
Change-Id: I3e8365455a23b0f271c5c1211dda6e2f4241a4e9
2018-06-07 10:33:29 +02:00
Koska, Andrzej 9dda0ed149 Checking if the PrivateSurface Size exceeds UINT32_MAX
Change-Id: I75598d7b4bdbfe1648b7f03fd0878ed51824221b
2018-04-17 16:05:19 +02:00
Zdunowski, Piotr 5946a2cd15 Fix printf issue with printing pointers from 32bit kernel on 64bit system.
Change-Id: I77771b4ebe6c4335d51dc1834f0b8f9df2a069a4
2018-04-05 17:12:33 +02:00