Commit Graph

322 Commits

Author SHA1 Message Date
Dunajski, Bartosz 52b63be026 Remove isCleanLeftoverMemoryRequired() + refactor sampler support path
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-10-04 16:24:03 +02:00
Kamil Kopryk 410fd7d909 Correct binding table prefetch
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075

Binding table entry count was zeroed even when
ForceBtpPrefetchMode debug flag was enabled
2022-09-13 14:34:30 +02:00
Dominik Dabek 16798467ac Add api specific config for allocation cache
Currently disabled for both opencl and level zero

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-09-05 21:15:18 +02:00
Lukasz Jobczyk 0d6bef0753 Add BCS split to api specific config
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-09-05 11:13:10 +02:00
Zbigniew Zdanowicz c3f7e40a8d Rename special pipeline select mode to systolic
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-31 22:16:26 +02:00
Dunajski, Bartosz 1a28c2a154 Add threads count queries
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-24 13:18:20 +02:00
Krystian Chmielewski 18adbed233 feat(zebin): add thread scheduling mode support
Resolves: NEO-7197

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-08-18 16:10:18 +02:00
Filip Hazubski 2f12e50b83 Explicitly initialize DispatchInfo members
Explicitly initialize objects:
- DispatchInfo::dispatchInitCommands
- DispatchInfo::dispatchEpilogueCommands

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-08-09 12:51:41 +02:00
Rafal Maziejuk ed0c36117e Apply heuristics when setting TG dispatch size on XE_HPC_CORE
The default TG dispatch size can be changed
to a better value based on number of threads in TG or
currently available amount of threads on GPU.
Decision on what TG dispatch size should be are based on
implemented heuristics.

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-6989
2022-08-08 16:43:10 +02:00
Compute-Runtime-Validation b38c750cc4 Revert "Add finish before command queue is released"
This reverts commit 50fae92ea2.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-08-05 19:25:23 +02:00
Filip Hazubski 1f21d34fd3 Add experimental CL_MEM_DEVICE_ID_INTEL property for memory object creation
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-08-05 14:54:30 +02:00
Dunajski, Bartosz a3903c385e Remove HW types from synchronization interface
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-07-25 13:59:26 +02:00
Kamil Kopryk d4d54f5093 Cleanup includes
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-25 09:58:38 +02:00
Katarzyna Cencelewska 965dbc131d Add new implementation to getSupportedDeviceFeatureCapabilities
Remove not longer needed method getExtraCabilities
Add report of support for dpas feature from xehp

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-07-21 18:35:57 +02:00
Mateusz Hoppe 50fae92ea2 Add finish before command queue is released
Related-To: NEO-5279

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-20 12:16:27 +02:00
Zbigniew Zdanowicz 3f8c19eec9 Limit system memory flag in builtin kernels to destination argument
Related-To: NEO-6959

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-19 10:58:51 +02:00
Katarzyna Cencelewska 25ce4d0c04 Clean unused code
remove parts with device queue

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-07-07 14:52:26 +02:00
Kamil Kopryk 1ef5161a54 Correct check if binding table prefetch is supported
Remove redundant resetBindingTablePrefetch function,
disable binding table prefetch on xe platforms in OCL.


Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-01 11:43:39 +02:00
Naklicki, Mateusz fd867c1621 Update OCL headers
Update headers to the OpenCL-Headers-2022.05.18 release:
https://github.com/KhronosGroup/OpenCL-Headers/releases/tag/v2022.05.18

Related-to: NEO-7102
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-06-23 17:07:16 +02:00
Kamil Diedrich 97ea332a9f Add support for ntHandles in OCL
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2022-06-17 22:55:53 +02:00
Filip Hazubski 9c18c0247e Correct surface format used for CL_LUMINANCE images
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-06-15 19:00:11 +02:00
Katarzyna Cencelewska c59c4b2957 Add hwInfo as argument to method getSupportedDeviceFeatureCapabilities
set proper value in method isMatrixMultiplyAccumulateSupported to be
consistent with support of extension *matrix_multiply_accumulate*

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-06-13 15:03:43 +02:00
Daniel Chabrowski c303c218be Add missing pragma once in header files
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-06-07 16:19:11 +02:00
Krzysztof Gibala dc1fe7d59a Change MemoryPool to enum class
Use enum class for MemoryPool in GraphicsAllocation
This change will ensure that GA is constructed in the proper way

- Rename namespace for isSystemMemoryPool method
- Add method getMemoryPoolString for logging actual pool which is in used
- Remove wrong pattern in GraphicsAllocation constructor

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-02 12:46:15 +02:00
Filip Hazubski 35d1f2e341 Add debug flag to control programming of thread arbitration policy with SCM
Related-To: NEO-6801

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-05-27 11:35:41 +02:00
Artur Harasimiuk 3f04769f07 style: configure readability-identifier-naming.FunctionCase
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-17 20:55:56 +02:00
Szymon Morek 4266f861ac Make implicit flush for cross-device dependency
Related-To: NEO-6418

If there's a cross-device dependency, flush batched
submissions to avoid deadlock.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-05-16 16:29:09 +02:00
Artur Harasimiuk d643c587b9 style: correct variable naming
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-16 15:02:15 +02:00
Patryk Wrobel 9b2ad0c5df Detect GPU hangs in flushBcsTask()
This change introduces detection of GPU hangs in flushBcsTask()
function. The new code has been covered with ULTs.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-05-12 16:17:16 +02:00
Artur Harasimiuk e9be9b64c6 clang-tidy configuration cleanup
Define single .clang-tidy configuration with all used checks and use
NOLINT to selectively silence tool. That way cleanup should be easier.
third_part/ has its own configuration that disables clang-tidy for this
folder.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-11 14:02:04 +02:00
Mateusz Jablonski 943ad0e1eb style: skip redundant unique_ptr::get function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-10 13:22:40 +02:00
Baj, Tomasz 2a0c395db5 Initial implementation for creating buffer with ext memory for OpenCl
Related-To: NEO-6757

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-05-05 13:13:54 +02:00
Lukasz Jobczyk 7eb70775ea Flush caches for cross CSR dependencies
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-04-27 15:03:27 +02:00
Filip Hazubski 3900c9d24a Report to StreamProperties whether large grf should be programmed with SCM
Add helper method to UnitTestHelper to query programmed grf values.

Related-To: NEO-6659

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-04-27 13:20:14 +02:00
Compute-Runtime-Validation 903cf766b3 Revert "Move shared helper files to shared directory"
This reverts commit 459524f129.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-04-27 13:12:16 +02:00
Filip Hazubski 459524f129 Move shared helper files to shared directory
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-04-27 10:34:42 +02:00
Filip Hazubski 944319b3d9 Correct media compression format for blitter operations on planar images
Set most significant bit for chroma planes.
Move common logic to helper function.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-04-22 17:02:16 +02:00
Dominik Dabek 76289be8c1 Avoid unnecessary allocation in enqueueHandler
Related-To: NEO-6837

kernelObjsForAuxTranslation will allocate only if needed

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-04-06 13:03:41 +02:00
Dominik Dabek 308f9ccfff Do not allocate dynamic state heap if not needed
Dynamic state heap is only used for sampler data.

Related-To: NEO-6821

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-03-31 12:13:13 +02:00
Jobczyk, Lukasz d77a6cbe4b Enable task count update from wait
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2022-03-28 11:09:55 +02:00
Compute-Runtime-Validation 0c064ccf4c Revert "Enable task count update from wait"
This reverts commit 5118a5d3a6.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-03-25 00:09:52 +01:00
Rafal Maziejuk dea671a04c Correct IMAGE1D_BUFFER width size calculation in BCS
Buffer's default bytesPerPixel value always equals 1 and as
IMAGE1D_BUFFER is originally an image, X coordinate needs to be
multiplied by bytesPerPixel (implied by image format)
in both copySize and (src/dst)Size.

Signed-off-by: Rafal Maziejuk rafal.maziejuk@intel.com
Related-To: NEO-6134
2022-03-24 17:15:38 +01:00
Lukasz Jobczyk 5118a5d3a6 Enable task count update from wait
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-23 11:38:50 +01:00
Patryk Wrobel 4cde6ea1ce Detect GPU hangs in CommandMapUnmap::submit()
This change introduces detection of GPU hangs
in CommandMapUnmap::submit() as well as in Event::submitCommand().
ULTs have been added to cover the new code.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-03-15 13:17:41 +01:00
Compute-Runtime-Validation 4f31b569e4 Revert "Correct IMAGE1D_BUFFER width size calculation in BCS"
This reverts commit 3490b489ad.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-03-12 20:02:55 +01:00
Rafal Maziejuk 3490b489ad Correct IMAGE1D_BUFFER width size calculation in BCS
Buffer's default bytesPerPixel value always equals 1 and as
IMAGE1D_BUFFER is originally an image, X coordinate needs to be
multiplied by bytesPerPixel in both copySize and (src/dst)Size.

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-6134
2022-03-11 09:34:40 +01:00
Michal Mrozek cd15c82eab Do not prefer copy engine for local to local transfers.
Execution Units are faster.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-03-08 15:42:58 +01:00
Patryk Wrobel f193efec2f Remove additional memory allocations for surfaces container
In constructor of CommandComputeKernel we had been doing multiple allocations
of memory on heap due to lack of call to std::vector copy-constructor or reserve
member function.

Furthermore, in production code there is only one place, where we create objects
of this type and we redundantly copy the local variable, which could be moved.

This change:
- ensures that constructor of CommandComputeKernel performs single allocation
in the worst case; in the best case, it does not allocate memory due to usage
of std::move on input parameter
- steals the memory of the local variable in place of usage of the constructor
to remove redundant copying and memory allocations
- uses reserve() method to reduce the number of allocations during creation
of this local variable

Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-03-03 12:07:36 +01:00
Rafal Maziejuk 385c60948e Treat IMAGE1D_BUFFER type as buffer in BCS
This type of image needs to be treated as buffer in order to
allow width to be greater than 16383.

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-6134
2022-03-02 15:41:15 +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