Commit Graph

68 Commits

Author SHA1 Message Date
Pawel Wilma
9cbafe8bdd Add per-DSS backed buffer programming to dispatch flags
Related-To: NEO-3220

Change-Id: I16711af6d5b2ca51ab2c92b680d253124774534f
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-01-30 08:40:59 +01:00
Mateusz Hoppe
60c7587c2b Simplify HardwareCommandsHelper
Related-To: NEO-4175

Change-Id: I39b08353514ea0bf384b6b592f24952d0ed631e6
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-27 17:10:33 +01:00
Filip Hazubski
07c4682668 Respect KernelExecutionType in enqueue kernel calls
Change-Id: I9de07f9e3b77c4a44f6a0127e0ae3bd7e1ab97f8
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-01-27 13:51:49 +01:00
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
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
Mateusz Hoppe
2e95ef42ae Move thread_arbitration_policy.h to core
- extract QueueThrottle to core

Change-Id: I954732a44ae4fdd5f227ec6be4e27b879ca6eece
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-17 18:09:00 +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
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