Commit Graph

81 Commits

Author SHA1 Message Date
Diedrich, Kamil
26ca64bb28 Add process safety to cl_cache on Linux
Current flow will be to have one synchronization point
config.file. Read remains unblocking, only write(caching)
operation will be blocking (lock on config.file)

Related-To: NEO-4262

Signed-off-by: Diedrich, Kamil <kamil.diedrich@intel.com>
2023-04-25 17:35:40 +02:00
Kacper Nowak
e19e006370 feat(zebin): Add debug flag for logging ZE Info
Add debug key LogZEInfo for logging ZE Info from zebin elf.
ZE Info will be dumped to a file (default igdrcl.log)

Related-To: NEO-7895
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2023-04-14 17:14:07 +02:00
Filip Hazubski
3cfba5b73d refactor(cmake): check images support per platform instead of per core
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-03-13 16:14:39 +01:00
Krystian Chmielewski
58d3f892a9 refactor(zebin): move files to seperate directory
* Moved zebin related files to zebin directory.
* Moved zebin related code to Zebin namespace.
* Separated zeInfo from zebin elf.
* Seperated zeInfo decoding from zebin decoder.
* Refactored populateKernelPayloadArgument function.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2023-03-03 21:48:19 +01:00
Compute-Runtime-Validation
84a7438ff2 Revert "refactor(zeInfo): move zeinfo to seperate file"
This reverts commit e3ce887662.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-03-03 11:56:52 +01:00
Krystian Chmielewski
e3ce887662 refactor(zeInfo): move zeinfo to seperate file
* Moved zebin related files to zebin directory.
* Separated zeInfo from zebin elf.
* Seperated zeInfo decoding from zebin decoder.
* Refactored populateKernelPayloadArgument function.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2023-03-02 12:46:56 +01:00
Mateusz Jablonski
bd32b21f7c refactor: add method to get hw config from CompilerProductHelper
Related-To: NEO-7622

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-03-02 08:25:50 +01:00
Warchulski, Jaroslaw
8c17313c8b Cleanup includes 53
Cleaned up files:
opencl/source/mem_obj/image.inl
shared/offline_compiler/source/decoder/zebin_manipulator.h
shared/source/aub_mem_dump/aub_alloc_dump.h
shared/source/compiler_interface/intermediate_representations.h
shared/source/helpers/blit_commands_helper_base.inl
shared/source/utilities/debug_file_reader.h
shared/source/utilities/software_tags.h
shared/source/xe_hpc_core/hw_cmds_pvc.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-15 13:21:14 +01:00
Kamil Kopryk
cab4b956eb refactor: rename compiler product helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-03 09:03:24 +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
924eb23c90 Split hwInfoConfig and CompilerProductHelper enablers
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-13 13:14:37 +01:00
Mateusz Jablonski
470c6d4660 Extend compiler interface,
add mocks for Platform version 2
create wrapper to populate IGC platform depending on interface version

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-12-13 07:53:59 +01:00
Daria Hinz
ab6e989eb3 Refactor product config helper
This commit brings order to the product config helper
code and corrects the naming

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-11-17 16:20:09 +01:00
Mateusz Jablonski
10c12bb3a7 Reduce creating files when running ocloc tests
Add a new listener to track created files

Related-To: NEO-7126

Co-authored-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-10 15:58:29 +01:00
Daria Hinz
0b3edc662e Remove unnecessary platform name translation
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-11-08 00:33:39 +01:00
Krystian Chmielewski
0ef6b9b64c Zebin manipulator - create dump directory fix
This commit fixes problem in zebin manipulator when dump was not
created.
* Explicitly create dump directory.
* Add slash to dump argument.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-10-24 20:44:27 +02:00
Krystian Chmielewski
4f0d19628e Ocloc asm/disasm support for zebin
This commit adds option to disassemble and assemble zebinary.

Disasm disassembles zebinary into sections. Text sections are
translated to assembly, relocations and symbols are
translated into human readable format.

Asm assembles zebinary from files generated by disasm.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-10-10 14:48:55 +02:00
Baj, Tomasz
0eab93501c Add cl_cache mechanism to ocloc
Related-To: NEO-6476

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-09-30 12:03:02 +02:00
Krystian Chmielewski
af57d2bd38 refactor ocloc interface
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-09-29 13:25:58 +02:00
Krystian Chmielewski
311b0b0020 Create input for linker during zebin decoding
Remove code duplication. Parsing zebin elf for relocations and symbols
is moved to decodeSingleDeviceBinary.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-09-22 11:12:39 +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
Kamil Kopryk
aed26ec51d Add DisableForceToStateless debug flag
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-19 14:08:28 +02:00
Szymon Morek
76e023b941 Link build option with L1 cache policy helper
Related-To: NEO-7003

Add L1CachePolicyHelper struct.
This struct is resposible for L1 cache policy
in build option, Surface State and stateless
caching. Currently default option for all
platforms is WBP (write by-pass)


Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2022-07-04 11:49:55 +02:00
Krystian Chmielewski
0c523b412f feat(ocloc): concatenate multiple fat binaries
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-06-27 13:08:51 +02:00
Daria Hinz
5745c3d99d Change AOT enums type & use forward declaration
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-06-20 13:40:29 +02:00
Daria Hinz
6d365cbfc3 Ocloc: New AOT design implementation
Ocloc will handle any new values that may be
passed to the -device argument.

Supported acronyms are available under cmd:
ocloc compile --help

Supported patterns:
- device acronym
- release acronym
- family acronym
- version (major.minor.revision)

Fatbinary will no longer handle major.minor.revision variances,
only acronyms allowed.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-06-14 13:20:45 +02:00
Compute-Runtime-Validation
cca1dbecbc Revert "Ocloc: New AOT approach implementation"
This reverts commit a44f1b43aa.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-06-12 21:27:08 +02:00
Daria Hinz
a44f1b43aa Ocloc: New AOT approach implementation
Ocloc will handle any new values that may be
passed to the -device argument.

Supported acronyms are available under cmd:
ocloc compile --help

Supported patterns:
- device acronym
- release acronym
- family acronym
- version (major.minor.revision)

Fatbinary will no longer handle major.minor.revision variances,
only acronyms allowed.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-06-10 09:24:13 +02:00
Bartosz Dunajski
9959896957 Add RT calls support to Kernel descriptor
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-22 16:33:59 +02:00
Patryk Wrobel
35a04e5915 Refactor and test initialization of FCL in ocloc
This change:
- extracts FCL to a separate class called OclocFclFacade
- tests the new class
- tests its usage in offline compiler

Related-To: NEO-6834
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-04-22 10:25:16 +02:00
Patryk Wrobel
a8680c0b82 Implement ULTs for IgaWrapper
This change:
- implements mock for functions from IGA DLL
- implements ULTs for IgaWrapper
- implements RAII wrapper for GTEST's capture of stdout
- adds ASAN and TSAN flags to ocloc_tests

Related-To: NEO-6834
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-04-19 12:26:36 +02:00
Patryk Wrobel
303c12bc5b Refactor and test initialization of IGC in ocloc
This change:
- encapsulates initialization of IGC in a separate class
- removes code duplication from OfflineLinker and OfflineCompiler
- tests the new encapsulated class

Related-To: NEO-6834
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-04-19 12:15:34 +02:00
Mateusz Jablonski
aae7858ed9 CMake: define enable core files only once
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-18 11:50:09 +01:00
Compute-Runtime-Validation
84a1ccb991 Revert "Remove overridePlatformName method"
This reverts commit 2484c68fe3.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-02-18 10:57:19 +01:00
Bartosz Dunajski
2484c68fe3 Remove overridePlatformName method
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-17 16:16:08 +01:00
Patryk Wrobel
53482e6821 Allow ocloc to link files
Added 'link' option to ocloc CLI, which allows linking of
several IR files to single output file. Supported formats
of output file are ELF and LLVM BC.

Related-To: NEO-6163
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-01-14 16:18:36 +01:00
Daria Hinz
0aeca8df22 New numerical approach to platforms in ocloc
For AOT feature, a new approach to passing
the -device arg to ocloc is implemented.
New character: <Major>.<Minor>.<Revision>

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-5954
2021-12-15 13:02:12 +01:00
Bartosz Dunajski
29f74a1a98 Rename cmake GEN variables
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-11-24 14:42:57 +01:00
Kamil Kopryk
7bbb43a563 Move sharedSystemMemCapabilities to hwInfo
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075
2021-11-17 14:42:05 +01:00
Mateusz Jablonski
21ef249961 Move ocl extensions logic to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-04 17:38:15 +01:00
Kamil Kopryk
03540d5301 Refactor per platform extra settings in ocloc
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6382
2021-10-28 16:24:12 +02:00
Mateusz Jablonski
19b8a03d30 Move some files from opencl/source/dll to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-22 19:59:55 +02:00
Kamil Kopryk
cfc673b77c Add compilerHwInfoConfig
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6237
2021-10-06 21:27:34 +02:00
Mateusz Jablonski
fae50eb64a Move hw_info files to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-23 22:16:59 +02:00
Kamil Kopryk
577c69d68b Remove not needed branch_filename_suffix
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6245
2021-09-14 16:33:49 +02:00
Kamil Kopryk
9ccf43e441 Correct branch_dir_suffix in cmake
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6245
2021-09-14 16:00:20 +02:00
Kamil Kopryk
f0ba132421 Correct ocloc cmake
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2021-09-09 18:17:23 +02:00
Katarzyna Cencelewska
5f491ed22b Add support for adlp in opensource
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com
2021-08-18 00:03:17 +02:00
Zbigniew Zdanowicz
628c21ca37 Organize product information files
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-08-06 15:59:28 +02:00
Krystian Chmielewski
75f8fbf82e Refactor ocloc query
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-08-06 14:12:45 +02:00