Zbigniew Zdanowicz
4c7bc2ca98
[feature, perf] add alogrithm to chain command buffers in container
...
This feature is part of performance improvement to dispatch and start
command buffers as primary batch buffers.
When exhausted command buffer is closed, then reserve exact space for chained
batch buffer start and bind it to the next command buffer.
When closing command buffer, then save ending pointer and
reserve aligned space.
Related-To: NEO-7807
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-04-05 15:49:01 +02:00
Dunajski, Bartosz
3ff7a63145
Reduce number of jumps in RelaxedOrdering scheduler
...
Related-To: NEO-7458
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2023-04-04 09:07:59 +02:00
Kacper Nowak
f1c64adb3c
fix(ocl): Fix potential mem leak + simplify code
...
- Fix potential memleak in case ASSERT returns false and test gets
aborted
- Remove not needed function argument
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com >
2023-03-27 13:31:42 +02:00
Zbigniew Zdanowicz
38e50007f7
[perf] simplify memory layout of command container class
...
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-23 13:31:47 +01:00
Zbigniew Zdanowicz
bc4e540c33
[fix] unify heaps size programing
...
- share same code between csr and cmd container to get default heap size
- share handling of debug flag to change heap size
- share platform level surface heap size between csr and command list
- refactor heap size files
- put heap size constant and function into namespace
- command list surface heap size increased to 2MB for xehp+ to match csr
- command list increased surface heap size only for sba tracking
- sba tracking heap consumption increased due to different reset policy
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-17 08:34:06 +01:00
Zbigniew Zdanowicz
f348bf78a3
[fix] allow to use all available command buffer size after reset
...
- this change uses unified approach to reuse command buffer
- unified method takes all available space when reseting stream
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-16 12:48:52 +01:00
Zbigniew Zdanowicz
e645f58b65
[fix] Do not reset state heap position for command list reset
...
- state base address tracking allows to reuse base address state
- surface state slots can be reused after sba reload or cache flush
- to avoid cache flush after each reset, then allow to gradualy consume heaps
- only until natural heap depletion and then dispatch reload of sba state
Related-To : NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-15 19:04:20 +01:00
Lukasz Jobczyk
79075a3e92
Make command buffers resident at cmd container init
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2023-03-15 16:11:29 +01:00
Zbigniew Zdanowicz
d93f00e075
[perf] simplify getting indirect heap memory location
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-10 17:17:01 +01:00
Cencelewska, Katarzyna
398c7b2d29
refactor, remove typo in struct name
...
change name of EncodeSempahore to EncodeSemaphore
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com >
2023-03-10 15:44:25 +01:00
Kamil Kopryk
fa8579602f
refactor: rename product helper files n/n
...
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-03-10 13:24:38 +01:00
Zbigniew Zdanowicz
0950f5a23e
Set global heap size to constant value
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-09 17:17:32 +01:00
Cencelewska, Katarzyna
c274309d7b
wa: add dummy blits before command MI_FLUSH_DW
...
to guarantee that all subblt got complete for previous copy
affect xe hpg
temporary changes under flag ForceDummyBlitWa
Related-To: NEO-7450
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com >
2023-03-09 10:40:35 +01:00
Zbigniew Zdanowicz
8a55d9b517
skip surface and dynamic heap creation when global heaps are used
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-07 13:40:14 +01:00
Cencelewska, Katarzyna
3e116ea378
refactor: use same paths when add command mi_semaphore_wait
...
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com >
2023-03-07 10:35:26 +01:00
Cencelewska, Katarzyna
50da32ffb1
wa: add dummy blits before command MI_ARB_CHECK
...
to guarantee that all subblt got complete for previous copy
affect xe hpg
Related-To: NEO-7450
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com >
2023-03-07 10:21:05 +01:00
Zbigniew Zdanowicz
d3c99f6414
Add level zero heap addressing enum, property and debug key
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-03-01 18:28:00 +01:00
Dunajski, Bartosz
c00c310cf4
Add MI_MATH MOCS support
...
Related-To: NEO-7458
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2023-02-27 19:06:24 +01:00
Zbigniew Zdanowicz
34064811d2
Refactor state base address programing 4/n
...
- This change gets level one cache policy from cached values instead
of calling virtual methods
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-27 17:30:36 +01:00
Lukasz Jobczyk
9a7d2f8068
Fill reusable allocation list for secondary command buffer
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2023-02-24 09:30:25 +01:00
Zbigniew Zdanowicz
3cb064fe95
Refactor state base address programing 3/n
...
This is small optimization to replace virtual call and retrieved struct with
cached value.
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-23 13:08:32 +01:00
Zbigniew Zdanowicz
43a49c4486
Refactor state base address programing 2/n
...
This change allows to read sba data directly from sba properties
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-23 12:20:25 +01:00
Lukasz Jobczyk
2f5be7a48d
Copy command buffer into ring buffer
...
Resolves: NEO-7422
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2023-02-22 16:37:34 +01:00
Zbigniew Zdanowicz
bf2072c3ea
Add cross regular and intermediate command lists base address state transitions
...
- updates coming from regular list are updated in csr last sent variables
- all per context and per kernel transitions kept in single place
- state updates from intermediate to regular are set in csr properties
- global atomics support duplicates removed
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-17 16:49:47 +01:00
Lukasz Jobczyk
4c32529b5b
Move fillReusableAllocationLists to first append
...
Related-To: NEO-7422
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2023-02-17 12:07:17 +01:00
Warchulski, Jaroslaw
0556d543a3
Cleanup includes 56
...
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-02-16 14:42:44 +01:00
Warchulski, Jaroslaw
64f735481d
Cleanup includes 48
...
Cleaned up files:
shared/source/command_container/command_encoder.inl
shared/source/os_interface/hw_info_config.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-02-10 17:23:02 +01:00
Warchulski, Jaroslaw
a2e6a8284b
Cleanup includes 47
...
Cleaned up files:
level_zero/tools/source/debug/windows/debug_session.h
level_zero/tools/source/sysman/memory/windows/os_memory_imp.h
level_zero/tools/source/sysman/windows/kmd_sys_manager.h
opencl/test/unit_test/aub_tests/command_stream/copy_engine_aub_tests_xehp_and
shared/source/command_container/command_encoder.inl
shared/source/command_stream/command_stream_receiver_hw_xehp_and_later.inl
shared/source/helpers/blit_commands_helper_base.inl
shared/test/unit_test/image/image_surface_state_fixture.h
shared/test/unit_test/os_interface/windows/os_interface_win_tests.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-02-10 17:07:30 +01:00
Zbigniew Zdanowicz
f2be0ebfc4
Allocate and consume shared heaps atomically
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-07 12:52:54 +01:00
Zbigniew Zdanowicz
7e0401d280
Add improvements to heap estimation in level zero command lists
...
- add estimation parameter for interface descriptor data count
- add to the heap estimation alignment parameter for dynamic and surface heaps
- extend encode interface and implementations to allow child heaps
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-03 20:26:27 +01:00
Zbigniew Zdanowicz
5097ef4825
Change dispatch kernel interface to provide already prepared heap objects
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-02-02 14:08:43 +01:00
Kamil Kopryk
2484c7ceb2
refactor: rename hw_helper files to gfx_core_helper files
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-02-01 19:37:51 +01:00
Zbigniew Zdanowicz
34b8f08fc6
Add state base address properties tracking for command lists
...
Related-To: NEO-5055
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2023-01-31 12:47:17 +01:00
Rafal Maziejuk
9080b0c109
Delete redundant adjustNumberOfThreadsInThreadGroup method
...
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com >
2023-01-30 17:10:01 +01:00
Kamil Kopryk
004d3e3416
refactor: don't use global ProductHelper getter 18
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-30 08:15:39 +01:00
Kamil Kopryk
026d50c7b9
refactor: don't use global ProductHelper getter 13/n
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-27 13:52:36 +01:00
Kamil Kopryk
b101f9f2f5
refactor: don't use global ProductHelper getter 12/n
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-27 12:29:18 +01:00
Rafal Maziejuk
b7380237c2
Add adjustNumberOfThreadsInThreadGroup method to EncodeDispatchKernel
...
Related-To: NEO-7357
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com >
2023-01-26 15:25:01 +01:00
Kamil Kopryk
27393c76ea
refactor: don't use global ProductHelper getter 11/n
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-26 08:16:52 +01:00
Warchulski, Jaroslaw
e21cf516d3
Cleanup includes 44
...
Cleaned up files:
level_zero/tools/source/sysman/windows/os_sysman_imp.h
opencl/source/command_queue/command_queue.h
shared/source/command_container/cmdcontainer.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-01-25 16:05:22 +01:00
Warchulski, Jaroslaw
c43233dabf
Cleanup includes 42
...
Cleaned up files:
level_zero/core/source/kernel/kernel_hw.h
shared/source/helpers/common_types.h
shared/test/common/libult/linux/drm_mock.h
shared/test/common/libult/ult_command_stream_receiver.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-01-25 09:16:39 +01:00
Kamil Kopryk
1758f55fe3
refactor: don't use global ProductHelper getter 7/n
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-23 16:37:47 +01:00
Kamil Kopryk
e9990dd124
refactor: don't use global ProductHelper getter 6/n
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-23 14:03:51 +01:00
Warchulski, Jaroslaw
49837b7bb5
Cleanup includes 39
...
Cleaned up files:
shared/source/command_container/command_encoder.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-01-23 11:56:42 +01:00
Mateusz Jablonski
ce059e7fe3
fix: align up surface size in surface state
...
don't abort when surface size is not aligned
underlying memory size is always aligned
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2023-01-20 05:55:47 +01:00
Warchulski, Jaroslaw
4794648978
Cleanup includes 26
...
Cleaned up files:
opencl/source/command_queue/csr_selection_args.h
opencl/source/event/event.h
shared/source/helpers/engine_control.h
shared/source/sku_info/definitions/sku_info.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2023-01-11 09:10:45 +01:00
Kamil Kopryk
f2bbb56d29
refactor: don't use global GfxCoreHelper getter 2/n
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-10 13:07:03 +01:00
Kamil Kopryk
f654481def
refactor: don't use global ProductHelper getter
...
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com >
2023-01-09 12:56:51 +01:00
Mateusz Jablonski
43b790957d
style: format code using clang-format 15.0.6
...
Related-To: NEO-7500
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2023-01-05 10:33:47 +01:00
Warchulski, Jaroslaw
9f3fc6858e
Cleanup includes 16
...
Cleaned up files:
shared/source/built_ins/built_ins.h
shared/source/command_container/command_encoder.h
shared/source/helpers/hw_helper.h
shared/source/memory_manager/allocation_properties.h
shared/source/xe_hpc_core/hw_cmds.h
shared/test/common/test_macros/test_excludes.h
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com >
2022-12-29 15:12:37 +01:00