Commit Graph

124 Commits

Author SHA1 Message Date
1c3d5c3892 Prepare mechanism for returning GPU execution error on OCL API
translate task count value to OCL error

Related-To: NEO-7412
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-04 15:54:19 +01:00
69bef975f0 OCL cache per thread data
Add caching mechanism for local ids in OCL.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-11-02 17:07:29 +01:00
c0342a0ab5 Optimize binaries' size by adjusting linkage of constants in headers
When header is included for the first time in translation unit,
then preprocessor simply copy-pastes its content. If we define a
constant in a header file and this constant has internal linkage
then each and every translation unit, which includes this header
will have its own copy of this constant.

C++17 introduces inline variables, which are meant to allow creation
of variables in header files, which do not cause multiple instances.

The inline variable has a single instance when:
- constexpr is used without static (constexpr implicitly implies inline)
- inline is used without static
- inline const is used without static (const does not imply internal linkage
when used with inline)

Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-08-26 22:52:04 +02:00
d795182eae Move files from shared/test/unit_test to /common (preamble, utilities)
unit_test/preamble/preamble_fixture.h -> common/fixtures
unit_test/source_level_debugger -> common/
unit_test/utilities/base_object_utils.h -> common/utilities
unit_test/utilities/destructor_counted.h -> common/utilities
unit_test/utilities/logger_tests.h -> common/utilities

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-17 11:24:58 +02:00
bca852617c Remove usage of TestLegacy from opencl tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-16 22:16:48 +02:00
5ffeac44c5 Correct shared fixture methods name to meet clang-tidy requirements
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-16 12:52:49 +02:00
e6fc458d4b Add a struct for test fixtures with correct method naming convention
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-11 12:55:52 +02:00
e07f9f0698 Add kernel algorithm to check any argument is using system memory
Related-To: NEO-6959

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-07-12 13:08:49 +02:00
4bdd8860a1 test.h refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-07-04 18:20:07 +02:00
2cc2d05c37 remove unused include
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-28 10:59:30 +02:00
b8cf0c757a Notify gtpin onCommandBufferComplete
Notify gtpin onContextDestroy before SVM Allocations are deleted.

Resolves: NEO-6985

Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2022-05-20 16:42:13 +02:00
819e0f5515 style: configure readability-identifier-naming.LocalVariableCase
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-16 12:39:44 +02:00
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
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
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
9b778863b4 Store GmmHelper in Gmm class
Store GmmHelper in Gmm class instead of GmmClientContext

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-04-27 15:45:49 +02:00
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
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
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
a95198521e Initial implementation of CacheSettingsHelper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-08 16:18:06 +01:00
c88fce0def Gmm construction cleanup
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-08 10:20:24 +01:00
a06fbd2077 Remove device enqueue part 10
- remove DeviceQueue

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-19 17:41:06 +01:00
c52223e642 Remove device enqueue part 4
-remove structs, class and tests with REQUIRE_DEVICE_ENQUEUE_OR_SKIP

Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-12 14:54:58 +01:00
e4bbed49d0 Use full path to include test.h 1/n
fix files in opencl

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-12-15 12:34:34 +01:00
64aec8dc4e Rename functions
Rename getEngines to getAllEngines
Rename engines to allEngines
Rename getEngineGroups to getRegularEngineGroups
Rename engineGroups to regularEngineGroups

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-13 14:27:02 +01:00
68aea5bf62 Rename compression flags and helpers
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 18:09:02 +01:00
5c266f9ab0 Compression refactor [3/n]
Dont use allocation type for compression preference

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 17:20:07 +01:00
55959d4d1d Helper method to check if allocation is compressed
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-02 16:13:53 +01:00
fbf1f367f4 Dont create blitter engine when blitter support is disabled
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-05 11:07:07 +01:00
0cde8eb7ff Change default revision for xe_hp_sdv
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-29 13:39:52 +02:00
515130dbe8 Fail on blitMemoryToAllocation when blitter is not supported
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-28 16:13:40 +02:00
f1b6b733f0 Reuse graphics allocation from mapped buffers in OpenCL
Related-To: NEO-6352
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-10-27 15:53:10 +02:00
ba767dfbaf Revert "Fail on blitMemoryToAllocation when blitter is not supported"
This reverts commit 7bfeeaab86.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-10-27 09:13:57 +02:00
7bfeeaab86 Fail on blitMemoryToAllocation when blitter is not supported
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-26 11:05:51 +02:00
58ebebeec6 Move drm_memory_manager_tests.h and related fixtures to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-21 20:46:58 +02:00
8f81f2ae8d Cleanup MockGmm
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-14 21:56:53 +02:00
48f01f28f5 Move core part of MemoryPropertiesHelpers to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-07 23:14:38 +02:00
0363749948 Disjoint local work size code from hw command generation
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-10-06 01:09:56 +02:00
9bea74a780 move mock_memory_manager to shared
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-10-05 16:22:38 +02:00
96fef37834 Move shared local work size code to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-10-04 14:04:28 +02:00
09ac89339e Move local memory access mode getters from HwHelper to HwInfoConfig
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-4541
2021-09-13 13:10:14 +02:00
9d99ee1636 Print driver diagnostics if aux translation of allocation in SVM allocs manager
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-09-13 10:23:32 +02:00
14c93a6432 Add OCL xe_hp_core unit tests
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-10 14:25:12 +02:00
eb14d8458b Add helper function to enable stateless compression
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-08-02 14:34:33 +02:00
9bca773b91 Remove command queue constructor
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-07-23 14:16:02 +02:00
330856c9e9 Add resolves for unified memory when aux translation is required
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-07-22 14:02:52 +02:00
c8b85bb5a9 Add method to check tile only context
Related-To: NEO-6043

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-07-21 12:22:42 +02:00
6fad8b3100 Refactor ocl kernel
Removed dispatch traits pointers and added getters. Removed uneeded
tests.

Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-06-11 16:52:09 +02:00
3ed0f074af Add method to set compression flag
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-06-10 12:27:24 +02:00
b98148fb3f Adjust minWorkGroupSize when EUFusion is enabled
Related-To: NEO-5260

Co-authored-by: Bartlomiej Wolny <bartlomiej.wolny@intel.com>
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-06-08 11:43:26 +02:00