Commit Graph

469 Commits

Author SHA1 Message Date
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
aed890a219 Move files between shared/test/unit_test and /common (fixtures, helpers, mocks)
unit_test/fixtures/mock_aub_center_fixture.h -> common/fixtures
unit_test/helpers/raii_hw_helper.h -> common/helpers
unit_test/helpers/static_size3.h -> common/helpers
unit_test/helpers/ult_limits.h -> common/helpers
unit_test/memory_manager/mock_prefetch_manager.h -> common/memory_manager
common/mocks/mock_aub_stream.h -> unit_test/mocks
common/mocks/mock_csr_simulated_common_hw.h -> unit_test/mocks
common/mocks/mock_direct_submission_diagnostic_collector.h -> unit_test/mocks
common/mocks/mock_lrca_helper.h -> unit_test/mocks
common/mocks/mock_tbx_stream.h -> unit_test/mocks
common/mocks/linux/mock_os_context_linux.h -> unit_test/mocks/linux
common/mocks/windows/mock_wddm_direct_submission.h -> unit_test/mocks/windows

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-11 12:53:19 +02:00
a6c1d9578e Move files between shared/test/common/helpers and shared/test/unit_test/helpersi
unit_test/helpers/cmd_buffer_validator.h -> common/helpers
unit_test/helpers/gtest_helpers.h -> common/helpers
common/helpers/blit_commands_helper_tests.inl -> unit_test/helpers
common/helpers/simd_helper_tests.inl -> unit_test/helpers
common/helpers/simd_helper_tests_pvc_and_later.inl -> unit_test/helpers
common/helpers/state_base_address_tests.h -> unit_test/helpers

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-10 15:23:12 +02:00
98d776867f Add initial support for KernelArgsBuffer allocation
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-03 20:28:21 +02:00
8afcc87dc5 Support for new names in Aub/Tbx mode
New acronyms that distinguish between configurations are supported.
This commit adds support for these names by reusing ProductFamilyOverride flag.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7112
2022-07-25 14:46:52 +02:00
a3903c385e Remove HW types from synchronization interface
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-07-25 13:59:26 +02:00
f53ae0a50e Revert "Add debug flag for EOT WA"
This reverts commit cf3817e058.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-09 01:21:56 +02:00
cf3817e058 Add debug flag for EOT WA
EOT WA requires allocating last 64KB of kernel heap and putting EOT
signature at the last 16 bytes of kernel heap

Related-To: NEO-7099
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-07 16:58:24 +02:00
4bdd8860a1 test.h refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-07-04 18:20:07 +02:00
76d905b1f2 Pass LogicalStateHelper to SBA helper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-07-01 14:52:20 +02:00
34a7059032 Avoid reading command buffer in flushed batched submissions
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-07-01 11:06:38 +02:00
2c853adac3 Use LogicalStateHelper to program ComputeMode
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-27 15:25:55 +02:00
6ab6e1abff Fix mutex order for event task and move args to gpu
This commit fixes problem with untransfered shared usm memory to gpu
when there is submit to gpu trigerred by user event. Also there is a fix
for dead lock problem caused by mixed orders of locking mutexes in csr
and in direct submission controller.

Related-To: NEO-6762

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-06-21 11:28:25 +02:00
939d109362 Add LogicalStateHelper class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-14 16:57:16 +02:00
49a27c3755 Refactor metrics, cmdqueue & CSR ULTs
The change eliminates the occurrence of fail on Windows:
number of sections exceeded object file format limit.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-06-13 03:55:51 +02:00
8de043b71f Stop redundant SBA programming due to global atomics
For all platforms different than XE_HP_SDV (ATS) stop considering the
`useGlobalAtomics` flag as a decisive factor for trigerring the SBA
(StateBaseAddress) programming on the HW. Only XE_HP_SDV supports such
flag.

For consistency of the implementation, keep the related logic in one
place only, that is a helper in `command_encoder` and then just reuse it
in different places (`command_stream_receiver`).

Related-To: NEO-6953
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2022-06-08 10:39:56 +02:00
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
77dde01503 Pass canonized gpuAddress in setCpuPtrAndGpuAddress
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-07 10:05:18 +02:00
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
3897f43f8e style: correct local variable naming
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-17 11:14:14 +02:00
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
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
2fcda0a528 Refactor: Change decanonize method accessing point
Accessing decanonize method as a member of GmmHelper class object

Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-05-11 12:57:02 +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
f6ee9c8ba0 Move ULTs to reduce object size
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-05-09 19:14:53 +02:00
b42a49eb4b Limit pipeline selection to Xe
Related-To: NEO-6624
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-05-09 13:16:43 +02:00
b429df1b55 fix issues reported by clang-tidy 14
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-09 12:49:01 +02:00
1088bfd837 Move shared ULT helper files to shared directory
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-05-06 09:20:27 +02:00
85b47476b6 Add MemorySynchronizationCommand to Blit commands estimation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-05-04 12:25:56 +02:00
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
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
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
96c668d595 L0 Debugger - Support for debugging immediate cmd lists
- add debugger support to imm cmd lists
- add debugger support to flushTask

Related-To: NEO-6845

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-04-22 14:43:41 +02:00
5911515ed0 Refactor debugger code
- helper sets all SbaAddresses for debugger in
EncodeStateBaseAddress<GfxFamily>::setSbaAddressesForDebugger()
- change DebuggerL0::captureStateBaseAddress() to take
LinearStream
- move getSbaTrackingCommandsSize() to Debugger class

Related-To: NEO-6845

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-04-21 13:04:34 +02:00
b5b8762faf refactor direct submission: Pass command stream receiver to ctor
Related-To: NEO-6643

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-19 23:02:55 +02:00
f6f5baf23a Revert "Fix Scratch surface state programming on PVC"
This reverts commit 5b175ebb4a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-04-19 10:53:22 +02:00
fc4eaa1894 Refactor passing GlobalFenceAllocation to DirectSubmission
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-07 16:08:07 +02:00
5b175ebb4a Fix Scratch surface state programming on PVC
- program max num of threads in surface state

Resolves: NEO-6850

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-04-07 07:44:23 +02:00
817ba40771 Stop accessing task count from out-of-bound in opencl and shared ult
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-04 11:29:54 +02:00
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
d77a6cbe4b Enable task count update from wait
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2022-03-28 11:09:55 +02:00
a230f267e1 Poll task count indefinitely on high throttle command queue
Resolves: NEO-6781

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-25 10:06:16 +01:00
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
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
5118a5d3a6 Enable task count update from wait
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-23 11:38:50 +01:00
3d8effcd69 Clean-Up unused code related to GMock
This commit:
- Removes usings e.g. ::testing::Return
- Removes unnecessary gmock inclues
- Replaces Gmock macros (e.g. EXPECT_THAT) with our custom implementations

Related-To: NEO-4941
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-22 16:16:34 +01:00
cd95572443 Reuse common logic of programming SCM fields for gen 9 and gen 11
Logic related to programming non coherent and thread arbitration policy for
gens 9 and 11 has been moved to EncodeComputeMode object, where similar
logic for gens gen12lp and newer is located.

Functions PreambleHelper::programThreadArbitration and
PreambleHelper::getThreadArbitrationCommandsSize have been removed.

Redundant setForceNonCoherent call has been removed from XE HPG

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-16 10:04:32 +01:00
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