Commit Graph

165 Commits

Author SHA1 Message Date
Jim Snow 2dfb7df63b Add RTDispatchGlobals allocation for ray tracing
If a kernel has ray tracing calls, we allocate and initialize
per-device RTDispatchGlobals if needed, and hand off pointer to
the same into a running kernel via an implicit parameter.

Related-To: NEO-5384
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2021-12-08 09:44:13 +01:00
Krystian Chmielewski 10acf9488b Zebin: accept .visaasm sections
Related-To:NEO-6456

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-12-03 14:03:48 +01:00
Kacper Nowak 2c3a1bf460 Make calcualting explicitArgs number independent of payloadArgs size
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2021-11-26 14:05:40 +01:00
Krystian Chmielewski 6519aa1822 ZEbin: add inline_data_payload_size field
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-23 11:22:04 +01:00
Krystian Chmielewski 8e57e48695 L0: Pass debug zebin to SLD
Added passing debug zebin to SLD.
Added support for .const.data.strings section in debug zebin creation.
Refactored debug zebin creation code.

Resolves: NEO-6246
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-18 11:38:23 +01:00
Mateusz Jablonski ec89b4eae7 Consume HasStackCalls info from IGC
Related-To: NEO-5081
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-15 20:30:51 +01:00
Krystian Chmielewski 620484010d Zebin: Add test for default execEnv values
Added test checking population of Kernel Descriptor with default
execution environment values.
Sorting.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-10 17:36:25 +01:00
Krystian Chmielewski 06eaef0352 Zebin: Use strings section for printf
Resolves: NEO-6143

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-07 19:10:47 +01:00
Compute-Runtime-Validation 870b324d72 Revert "ZEBin: fix CTD passing when inline data is supported"
This reverts commit 125946e374.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-11-05 13:31:50 +01:00
Krystian Chmielewski 125946e374 ZEBin: fix CTD passing when inline data is supported
In zebin always pass inline data when it's supported.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-11-05 10:04:19 +01:00
Krystian Chmielewski bb77165f70 remove regex from yaml parser
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-10-29 15:11:48 +02:00
Krystian Chmielewski f20cdac7d3 Zebin: add support for has_dpas
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-10-28 09:59:21 +02:00
Krystian Chmielewski f164acad0b Allow whitespace before ] in inline collection
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-10-27 15:32:32 +02:00
Krystian Chmielewski 174c1dfe64 Add inline collection support in yaml parser
Added support for inline collection in following syntax: [1, 2, 3]

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-10-27 13:23:13 +02:00
Kamil Kopryk 3a52858529 Remove not needed fallthrough
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2021-10-25 15:30:22 +02:00
Bartosz Dunajski d34ef3170a Remove CPP_ATTRIBUTE_FALLTHROUGH macro
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-22 17:27:57 +02:00
Zbigniew Zdanowicz 25c71a6c13 Move kernel info to shared directory
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-29 23:49:49 +02:00
Artur Harasimiuk a63b9b1273 move common files to shared/
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-27 11:10:20 +02:00
Krystian Chmielewski 1417e894c7 Create debug zebin
Creates copy of zebinary with program headers containing
addresses of segments and applies debug relocations.


Related-To: NEO-6071
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-09-15 13:56:38 +02:00
Krystian Chmielewski 03e29c34c4 Decode debug environment - zebin
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-09-15 10:10:04 +02:00
Jaroslaw Chodor c23a74e902 Zebin - optimizing yaml parser
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-08-05 14:05:53 +02:00
Krystian Chmielewski 7dea397f22 Decode collection attributes in exec env
Add support for decoding required work group size and work gorup walk
order dimensions in zebin.

Related-To: NEO-6088
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-27 14:09:30 +02:00
Krystian Chmielewski 78abc1c6fd Add work dimensions payload arg to zebin
Related-To: NEO-5833
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-20 16:30:27 +02:00
Krystian Chmielewski 9c7d8a183b Decode zebin reloc types
Change LinkerInput::RelocationInfo::Type to be compliant with zebin
relocation types.
Add support for setting relocation type if zebin relocation
type is set.
Continue supporting R_AMD64_64 and R_AMD64_32 relocation types for
backward compatibility

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-16 12:33:51 +02:00
Jaroslaw Chodor 6bac487e32 Accepting all debug section in zebin
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-07-15 18:11:07 +02:00
Krystian Chmielewski a32c022202 Accept debugInfo section in zebin
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-15 12:50:48 +02:00
Krystian Chmielewski 1b2cfbbb1f Align per thread data size to GRF size
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-15 11:53:13 +02:00
Krystian Chmielewski 7ee83db9d8 Add support for IntelGT note section
Add extraction of IntelGT note section in zebin decoder.
Add target validation based on intelGT notes in zebin decoder.
Add check in unpacking (unpackSingleDeviceBinary) for e_machine,
and validate target device accordingly.

Related-To: NEO-5658
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-07-09 11:17:14 +02:00
Jaroslaw Chodor 84653008b9 Fatbinary - settle for IR if devbin not available
Fixes problems with recompilation from IR when
fatbinary is being used.

Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-06-28 17:09:09 +02:00
Krystian Chmielewski 8a2e8670a7 Update zeInfo decoder version
Related-To: NEO-3739
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-06-23 14:08:40 +02:00
Krystian Chmielewski d62049035a printf support with ZEBinary
Resolves: NEO-5657

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-06-21 20:53:58 +02:00
Krystian Chmielewski c94ad034d9 Add support for zebin sampler_index
Resolves: NEO-5823
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-05-20 14:40:46 +02:00
lgotszal 3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Krystian Chmielewski ef71915c71 Remove KernelArgInfo and use KernelDescriptor's args instead
Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-04-23 15:12:09 +02:00
Konstanty Misiak 0dc2143dea Fix zebin kernel without explicit arguments decoding
Related-To: NEO-5562

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2021-03-22 12:06:26 +01:00
Krystian Chmielewski 10af36c70a Add support for buffer_offset arg
Resolves: NEO-5487

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-03-18 12:29:27 +01:00
Filip Hazubski 9a8125cdb0 Correct formatting
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-03-16 10:29:41 +01:00
Krystian Chmielewski 41f3bd00ff Remove PatchTokens from KernelInfo
Use KernelDescriptor instead of patchTokens stored in KernelInfo's
patchInfo.
Removed: SPatchMediaInterfaceDescriptorLoad, SPatchAllocateLocalSurface,
SPatchMediaVFEState(slot 0), SPatchMediaVFEState(slot 1),
SPatchInterfaceDescriptorData, SPatchSamplerStateArray,
SPatchBindingTableState, SPatchDataParameterBuffer,
SPatchDataParameterStream, SPatchThreadPayload,
SPatchKernelAttributesInfo, SPatchAllocateStatelessPrivateSurface,
SPatchAllocateSyncBuffer,
SPatchAllocateStatelessConstantMemorySurfaceWithInitialization,
SPatchAllocateStatelessGlobalMemorySurfaceWithInitialization,
SPatchAllocateSystemThreadSurface.

Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-03-09 17:09:13 +01:00
Mateusz Hoppe 6dd0f0c728 Relocate debug data
Related-To: NEO-4769

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-16 14:59:30 +01:00
Jaime Arteaga 1aca16a7ac Add experimental_properties for indirect access
Read zebin experimental properties indicating whether a kernel has
indirect access and if so, ignore calls to zeKernelSetIndirectAccess.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-02-10 14:23:43 +01:00
Mateusz Hoppe 5d2ea72db6 Handle relocations from zeBin
Related-To: NEO-5323

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-21 13:16:38 +01:00
Jaroslaw Chodor 4c50a9e147 Zebin - Improving binding table generation
Allowing N:1 kernel_arg:bti mappings

Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-01-20 18:37:45 +01:00
Mateusz Hoppe ffb6e955b1 Decode relocations in ELF
Related-To: NEO-4769, NEO-5323

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-19 16:02:25 +01:00
Mateusz Jablonski 5a5ad64f5d Ocloc compile: support gen families exposed in help
fix typo in method name

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-01-11 19:11:56 +01:00
Krystian Chmielewski 4948c39d39 Remove executionEnvironment from KernelInfo
Related-To: NEO-3739
2020-12-16 14:56:57 +01:00
Kamil Diedrich 79d4af28de Switch to c++17
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2020-12-03 15:15:32 +01:00
Jaroslaw Chodor 0e9be40a7c zebin - fixing missing image metadata
Change-Id: Iae49aacb2fb7b38eea987a5fb283f12fc75718bf
2020-11-02 14:10:49 +01:00
Jaroslaw Chodor 345e56a151 Zebin improvements
* cleaning-up per-thread buffer size calculations
* fixing default slm alignment to 16
* adding scratch space slots
* renaming slm addressing mode
* adding support for zeinfo version

Change-Id: I0450353788b8488a685976d7f1dd26a44360383c
2020-10-29 16:33:21 +01:00
Bartosz Dunajski 1926ef8319 is_simt_thread token support
Change-Id: I8cee6ff26229f0f492ba0d1e5e61d6e46e0c2486
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-21 14:14:43 +02:00
Konstanty Misiak ec054a87da Fix builtin compiling with ZEBin
Related-To: NEO-5020

Change-Id: I2698db921e8b6c61ee592a0d6611dc38173a1688
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-10-06 13:04:45 +02:00
Bartosz Dunajski 55bd544402 Lazy evaluate arguments of printDebugStrings(...) function
Change-Id: Ie44e109fd9235c5df32fb90b9e6fc6058e558a99
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-25 18:38:58 +02:00
Jaroslaw Chodor a4ba92338a zebin - strip kernel name of quotes
Change-Id: If8054c01ea1992c0ba998e22b726b127c652beed
2020-09-07 18:25:36 +02:00
Jaroslaw Chodor 2d4468bb3b Ignore SHT_ZEBIN_GTPIN_INFO
Change-Id: I85c5bd52d96dce6603329bfe997a70dc5a432d3f
2020-09-07 18:04:37 +02:00
Jaroslaw Chodor 36d350c8fc Zebin per_thread_memory_buffers
Change-Id: I66074ac9f1d5b1417dfad5c044149e86ab9aad1d
2020-08-31 15:09:49 +02:00
Jaroslaw Chodor 2a41911166 Updating zeinfo decoder
Change-Id: Ib07b58e628e866af6e5368c6856dc9ebf0985aa7
2020-08-19 17:15:31 +02:00
Pawel Cieslak fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Jaroslaw Chodor 51d00dbc47 ocloc zebin validator
Change-Id: I56bd384a0af4f3460a41850bf178c4163b812221
2020-08-13 14:17:39 +02:00
Jaroslaw Chodor 321f649854 Zebin support
Change-Id: I1e426ee2c5174fd0a4c51c1644cda467c2b88881
2020-08-07 11:48:41 +02:00
Jaroslaw Chodor d65cdab453 Zebin - yaml parser
Change-Id: If8b5bcd68b7d39bfd3fb53b619f5de973b059bff
2020-07-30 07:26:44 +02:00
Pawel Cieslak f184d79325 Fix clang-10 runtime error: applying non-zero offset to null pointer
Change-Id: Ib53d7eb39378875287442b0776bf47760b041083
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-04-08 19:08:20 +02:00
Jaroslaw Chodor 7fc44aa60e Support for clLink with spec constants
Resolves: NEO-4537

Change-Id: Ic9a9ea8a7d4a83e6a308735b653bdd334cb88bf9
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2020-04-03 00:21:33 +02:00
Jaroslaw Chodor 915b80b1df Introducing kernel descriptor
Change-Id: I4ce6ebf27a81cf14b055817ebfe76d8427e349ab
2020-02-25 00:03:15 +01:00
Mateusz Jablonski 9dbeeea18f Clang-format: restore sorting includes
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +01:00
Mateusz Jablonski 7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00