Commit Graph

3062 Commits

Author SHA1 Message Date
Daria Hinz
99120d239f Refactor ocloc product config tests
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-03-01 12:52:01 +01:00
Lukasz Jobczyk
3c30e1b02b Add AssignBCSAtEnqueue debug flag
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-01 12:43:36 +01:00
Patryk Wrobel
05bf7a4315 Detect GPU hang in AsyncEventsHandler
This change introduces detection of GPU hangs
in asynchronous events handler. ULTs have also
been added to cover the new code.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-03-01 11:41:12 +01:00
Bartosz Dunajski
927bbe9ee9 Disable DirectSubmission in aub/tbx mode
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-01 11:00:42 +01:00
Lukasz Jobczyk
b096422e78 BCS round robin adjustments
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-01 09:45:38 +01:00
Dominik Dabek
b9d8d8c0fd Optimize setKernelArgSVMPointer
If same pointer is already set, we don't need to set it again.

Related-To: NEO-6737

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-01 09:12:13 +01:00
Lukasz Jobczyk
090bfb9642 Reuse kernel allocation
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-02-28 19:26:19 +01:00
Patryk Wrobel
0ecc7c5e3b Detect GPU hangs in clFinish
This change introduces detection of GPU hangs in
clFinish function as well as unit tests to cover
the new code.

Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-02-28 19:07:36 +01:00
Konstanty Misiak
cf1bc3a2ba Disable EU fusion based on kernel properties from compiler
Related-To: NEO-6633

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2022-02-28 18:50:38 +01:00
Szymon Morek
205571999e Propagate VA syncSurface failure to API call
Currently, if syncSurface method fails, driver
will result in CL_SUCCESS. This PR fixes that.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-02-28 18:34:13 +01:00
Daniel Chabrowski
ca7d47598a Reintroduce prelim DRM debug support
It was verified that the issue existed before the failing commit.

Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-28 18:25:57 +01:00
Daniel Chabrowski
d603bb2f34 Revert "Prelim DRM debug support"
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591

This reverts commit 5e021be0cd.
2022-02-25 18:33:11 +01:00
Mateusz Jablonski
82e3b10c5a Fix typo
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-25 18:10:41 +01:00
Daria Hinz
0c6863766a Set device ids for PRODUCT_CONFIG
Ocloc must set the default device id if the user
selects <major>.<minor>.<revision> pattern.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-02-25 18:01:40 +01:00
Bartosz Dunajski
ba2c97358e Remove WaDefaultTile4 flag
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-25 10:59:28 +01:00
Katarzyna Cencelewska
93efb2c63f Move DATA_PARAMETER_CHILD_BLOCK_SIMD_SIZE to ignore
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-02-25 10:29:58 +01:00
Aravind Gopalakrishnan
e4a93f9870 Set page table cloning on for event device allocs
Related-To: NEO-5968

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2022-02-24 22:35:03 +01:00
Mateusz Jablonski
a2386ad216 Correct programming of implicit args on pre-XeHp platforms
On pre-XeHp platforms implicit args aren't at the beginning of indirect data,
GPU address of implicit args buffer is programmed within cross thread data

Related-To: NEO-5081, IGC-4710
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-24 20:52:04 +01:00
Lukasz Jobczyk
0634aa3f1b Create resource with given address
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-02-24 17:06:19 +01:00
Aravind Gopalakrishnan
c1970942aa Update debug key to override timestamp event settings
Related-To: NEO-5968

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2022-02-23 23:38:05 +01:00
Patryk Wrobel
7f729b7f89 Detect GPU hang in clWaitForEvents
This change:
- moves NEO::WaitStatus to a separate file
- enables detection of GPU hang in clWaitForEvents
- adjusts most of blocking calls in CommandStreamReceiver to return WaitStatus
- adds ULTs to cover the new code

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-02-23 13:33:09 +01:00
Mateusz Jablonski
ea6f089e17 Unify implicit args programming across APIs
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-23 11:52:47 +01:00
Igor Venevtsev
086a70ca52 Add ForceAllResourcesUncached debug variable
Resolves: NEO-6563

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-02-23 09:43:48 +01:00
Daniel Chabrowski
5e021be0cd Prelim DRM debug support
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-22 14:59:07 +01:00
Compute-Runtime-Validation
e984760423 Revert "Move and extend local memory DRM allocations"
This reverts commit b84b0015d5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-02-22 08:48:46 +01:00
Daniel Chabrowski
b84b0015d5 Move and extend local memory DRM allocations
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-21 16:04:53 +01:00
Aravind Gopalakrishnan
16f2fbbc37 [9/n] L0 immediate commandlist improvements
Add HwInfo utility for more fine-grained flush task enablement
Related-To: LOCI-1988

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2022-02-18 19:51:28 +01:00
Mateusz Jablonski
aae7858ed9 CMake: define enable core files only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-18 11:50:09 +01:00
Rafal Maziejuk
7d7efb5acd Correct aub test for enqueueCopyImage
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
2022-02-18 10:23:05 +01:00
Mateusz Jablonski
6799ea6119 Move linux device factory tests to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-18 10:15:53 +01:00
Kacper Nowak
b62675290f Refactor source level debugger notification in OCL. [2/2]
Refactor source level debugger notification about debug data in OCL
(build/link path).
- Share common code
- Remove unnecessary function(s)
- Zebin-related ULTs refactor

Related-To: NEO-6644
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-02-17 21:40:05 +01:00
Mateusz Jablonski
c30ee611de Add ocl to filenames with excludes for opencl unit tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-17 17:59:05 +01:00
Mateusz Jablonski
4f71aaf595 Handle SIMD-1 scenario when programming local ids for implicit args
according to implicit args design for SIMD-1 local ids are one-by-one

Resolves: NEO-6692
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-17 17:48:54 +01:00
Fabian Zwolinski
63ae26715e Remove GMock from MockD3DSharingFunctions
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-02-17 11:50:18 +01:00
Igor Venevtsev
60d6505932 L0 debugger - reports process ENTER/EXIT events for zeCommandQueues
- PROCESS_ENTRY - triggered by first zeCommandQueueCreate()
- PROCESS_EXIT  - triggered by last zeCommandQueueDestroy()

Resolves: NEO-6503

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-02-16 16:28:33 +01:00
Rafal Maziejuk
2d901f925c Run aub tests for enqueue image operations with BCS enabled
Following API calls are being tested:
- enqueueWriteImage
- enqueueReadImage
- enqueueCopyImage

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-6135
2022-02-16 14:54:48 +01:00
Mateusz Jablonski
b9d613995d Move createDrmVirtualMemory function to drm_neo.cpp
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-16 11:34:52 +01:00
Rafal Maziejuk
7931fb8f9a Correct aub tests for image enqueue operations 3/n
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-6135
2022-02-16 10:59:36 +01:00
Mateusz Jablonski
4a24195e99 Move bind/unbind buffer objects methods to drm_neo.cpp
use ioctl helper to handle binding properly

Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-16 08:37:16 +01:00
Aravind Gopalakrishnan
74cdd60255 [7/n] L0 immediate commandlist improvements
Enable flushTask only for specific families for now

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2022-02-15 18:43:30 +01:00
Mateusz Hoppe
b71a12c252 Set cooperative flag for debuggable contexts during creation
Related-To: NEO-6668

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-02-15 16:00:25 +01:00
Kacper Nowak
cd9cc53159 Correct setting usesStringMap flag in printf
This commit fixes setting usesStringMap flag for printf, taking into
account using indirect functions in legacy (non-zebinary) path. It also
adds new field to kernelDescriptor, specifying the binary type
(legacy/zebin).

Related-To: NEO-6604
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-02-15 15:39:10 +01:00
Mateusz Jablonski
143f67f2fe Enable vm bind availability based on ioctl helper support
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 15:27:52 +01:00
Daniel Chabrowski
f7322d3b85 Extend EngineInfo with additional copy engines
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-15 15:05:02 +01:00
Mateusz Jablonski
12e2670b9a Add ioctl helper function to check vm bind availability
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 12:43:50 +01:00
Mateusz Jablonski
cf27583264 Move createDrmContextExt to drm_neo.cpp
add ioctl helper functions to create dedicated drm contexts

createContextWithAccessCounters
createCooperativeContext

Related-To: NEO-6591

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 09:16:36 +01:00
Compute-Runtime-Validation
c5c3e865f0 Revert "Fail build program on PVC with stateful accesses"
This reverts commit 9466113cef.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-02-14 18:55:14 +01:00
Patryk Wrobel
6ac6db7b04 Store single generic IR in fatbinary when built from SPIR-V input
This change prevents embedding identical SPIR-V section for each
target requested in fatbinary build. Instead of duplicating SPIR-V,
a new file called 'generic_ir' is added to AR archive. It contains
SPIR-V, which was used to build fatbinary. Build fallback in runtime
has been also adjusted - if 'generic_ir' file is defined in fatbinary
and there is no matching binary, then this generic SPIR-V is used to
rebuild for the requested target.

Additionally, MockOclocArgumentHelper::loadDataFromFile() was adjusted
to ensure null-termination of returned strings.
This change also removes possible undefined behavior, which was
related to reading names of files from AR archive. Previously,
if filename was shorter than requested target name, we tried to
read more memory than allowed.

Related-To: NEO-6490
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-02-14 15:30:46 +01:00
Baj, Tomasz
2eb7ae7a8d ocloc accept underline and shorter gen names
Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
Related-To: NEO-6122
2022-02-14 14:55:30 +01:00
Kamil Kopryk
9466113cef Fail build program on PVC with stateful accesses
Related-To: NEO-6075

After this change driver will fail clBuildProgram/zeModuleCreate api calls
whenever stateful access is discovered on PVC.
This is required since in this case allocation greater than 4GB
will not work.
If user still wants to use stateful addressing mode,
-cl-opt-smaller-than-4GB-buffers-only / -ze-opt-smaller-than-4GB-buffers-only
build option should be passed as build option, but then user can not use
bufers greater than 4GB.


Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-02-14 13:44:22 +01:00