Commit Graph

737 Commits

Author SHA1 Message Date
Szymon Morek
ec04de61a7 [L0][XE_HPC]Perform memcpy on CPU for non-usm ptrs
Related-To: NEO-7237

If size is small enough, it is more efficient to
perform copy through locked ptr on CPU.
This change also introduces experimental flag to
enable this.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-09-26 13:20:40 +02:00
Compute-Runtime-Validation
f5575a1370 Revert "Remove fallback path for PAT index programming"
This reverts commit faf8d51f6d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-09-23 20:46:31 +02:00
Dunajski, Bartosz
6175a3e785 Debug flag to force stateless mocs encryption bit
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-23 15:19:26 +02:00
Maciej Bielski
56cb1f757b programStateBaseAddress: improve code reuse
Another step towards cleaner callers of
StateBaseAddressHelper<>::programStateBaseAddress.

Export programming state base address into a separate function to
improve code reuse and reduce copy-pasted fragments, which make code
modifications or maintenance more and more difficult over time. Use
specialization for gen-specific variations.

Related-To: NEO-6774
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2022-09-21 11:54:57 +02:00
Dunajski, Bartosz
faf8d51f6d Remove fallback path for PAT index programming
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-21 10:46:43 +02:00
Lukasz Jobczyk
efac290ba3 Do not use selector copy engine
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-09-20 21:49:00 +02:00
Mateusz Jablonski
cfe51ff2ba Remove not used isSimulation functions
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-09-20 11:01:55 +02:00
Michal Mrozek
3d5e34f727 Reduce the size of masks to 4.
32 is not required.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-09-19 21:53:40 +02:00
Lukasz Jobczyk
24b1cfbff5 Change internal copy engine to BCS3
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-09-15 16:08:10 +02:00
Zbigniew Zdanowicz
218a98f7f7 Refactor of pipeline select programming
Adding new interface to cooperate with hw context state
Simplify programming removing unnecessary functions
Code optimization that stop using expensive call and instead
stores configuration parameter

Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-15 15:38:10 +02:00
Zbigniew Zdanowicz
cee520b311 simplify systolic mode code and reduce double implementation
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-09-15 11:57:54 +02:00
Krystian Chmielewski
1f6c09ba1d zebin: sanitize scratch space size
Sanitize scratch space size to value programmable on GPU.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-09-09 11:50:09 +02:00
Dunajski, Bartosz
84872812f2 Remove not used helper
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-06 16:02:56 +02:00
Dunajski, Bartosz
16d9000429 Add option to change GRF mode
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-09-06 13:00:17 +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
Lukasz Jobczyk
399758ef17 Change default engines for BCS split
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-08-31 21:34:36 +02:00
Dominik Dabek
8cc0177f1c Change DG2 l1 cache policy to WB
With compiler LSC WAs this gives better performance.

If debugger is active, policy will not be changed ie.
will be WBP.

Related-To: NEO-7003

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-08-31 14:31:23 +02:00
Patryk Wrobel
9f2cfc6f9d Limit files included by fence.h and csr_definitions.h
This change introduces usage of forward declarations
and removes unneeded includes from the mentioned files.

Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-08-30 13:13:40 +02:00
Compute-Runtime-Validation
2621460e80 Revert "Change DG2 l1 cache policy to WB"
This reverts commit a820e73dd7.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-08-27 08:04:19 +02:00
Patryk Wrobel
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
Dominik Dabek
a820e73dd7 Change DG2 l1 cache policy to WB
With compiler LSC WAs this gives better performance.

If debugger is active, policy will not be changed ie.
will be WBP.

Related-To: NEO-7003

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-08-26 12:58:45 +02:00
Zbigniew Zdanowicz
f656707fc0 Use hardware support flags for state compute mode state changes
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-25 18:46:37 +02:00
Compute-Runtime-Validation
a5b4a13452 Revert "Return error when image arg does not support media block commands"
This reverts commit 8388e6cf4a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-08-24 06:23:22 +02:00
Dunajski, Bartosz
595cfebaef Refactor PIPE_CONTROL programming
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-23 13:55:25 +02:00
Maciej Plewka
8388e6cf4a Return error when image arg does not support media block commands
Related-To: NEO-7168

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-08-23 12:07:29 +02:00
Wrobel, Patryk
a6c7f341dd Improve safety of makeCopy() function
The mentioned function allocates and copies elements
of size 1. Therefore, the implementation was simplified
and additional check was added to avoid possible UBs.

Signed-off-by: Wrobel, Patryk <patryk.wrobel@intel.com>
2022-08-22 17:16:53 +02:00
Lukasz Jobczyk
82e29fd048 Add bcs split control mask
Introduce debug variable to control which engines
the tranfser will be split into

Related-To: NEO-7173

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-08-19 13:21:10 +02:00
Zbigniew Zdanowicz
0011368775 Add parameter to set surface state base address value
This change introduces capability to set surface state base address
when surface state heap or global base address are not available

Related-To: NEO-7187

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-18 15:36:43 +02:00
Dominik Dabek
aa3a4765b9 Respect ForceAllResourcesUncached flag
Respect debug flag ForceAllResourcesUncached even when
Override L1 Policy flags are also set

Related-To: NEO-7003

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-08-18 11:46:33 +02:00
Wrobel, Patryk
dda5b19859 Adjust the implementation of strncpy_s() for Linux
This change:
- prevents writing memory out of the range of the destination buffer
- prevents calling strlen() with non-null terminated c-string
- corrects the logic, which validates passed range to proceed
when real length fits the destination buffer

Related-To: NEO-7264
Signed-off-by: Wrobel, Patryk <patryk.wrobel@intel.com>
2022-08-17 18:37:46 +02:00
Zbigniew Zdanowicz
6c38b36251 Unify getting state base address command space from command buffer
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-17 11:49:02 +02:00
Zbigniew Zdanowicz
ceb9d81f87 Add struct argument for input/output in StateBaseAddressHelper
This refactor makes future interface changes easier

Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-17 10:28:49 +02:00
Jim Snow
a00e84ebba Allocate RTStack based on full-die EU count.
Related-To: LOCI-3334

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2022-08-11 23:32:59 +02:00
Zbigniew Zdanowicz
7d6bd45604 Unify programming additional flags for front end command
Related-To: NEO-5019

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-11 10:57:32 +02:00
Zbigniew Zdanowicz
1b9d50660a Unify programming of binding table base address command
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-08-10 14:35:02 +02:00
Dunajski, Bartosz
98d776867f Add initial support for KernelArgsBuffer allocation
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-03 20:28:21 +02:00
Dunajski, Bartosz
53a3cd2cdd Add method to merge LSH pipelined state during cmd list execution
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-07-28 17:32:53 +02:00
Rafal Maziejuk
af91f94098 Improve calculateAvailableThreadCount implementation
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
2022-07-28 11:43:14 +02:00
Compute-Runtime-Validation
b3078cfbae Revert "Change DG2 l1 cache policy to WB"
This reverts commit 9a5e619c42.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-28 07:27:13 +02:00
Kamil Kopryk
0603819b68 Cleanup includes 3/n
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-27 15:28:13 +02:00
Dominik Dabek
9a5e619c42 Change DG2 l1 cache policy to WB
With compiler LSC WAs this gives better performance.

Related-To: NEO-7003

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-07-27 10:20:36 +02:00
Michal Mrozek
c1ab4aa3e0 Always program blit src & dst to local.
This way we would avoid blitter throttling in case it is set.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2022-07-26 18:57:24 +02:00
Daria Hinz
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
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
Jim Snow
f4879f064f Allocate per-tile RTDispatchGlobals, handle ray tracing patch tokens.
Related-to: NEO-6711

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2022-07-22 06:29:29 +02:00
Filip Hazubski
20d0541e57 Add ForceTheoreticalMaxWorkGroupCount debug toggle
New debug toggle disables limitation of work-group count for related queries.

Additionally OverrideMaxWorkGroupCount toggle was updated
to behave the same way, ignoring underlying engine type
when max-work group count is queried.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-07-20 12:53:57 +02:00
Daria Hinz
91a97dfaea Restore old device id design in ocloc
This change removes some of the logic related to
passing device id as an argument in ocloc introduced in
"Setting default device id for acronym".

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-07-19 15:55:13 +02:00