previous approach was to version ocloc library but it was deprecated
right now there will be 2 known libraries:
- libocloc.so - for mainstream
- libocloc-legacy1.so for legacy platforms
Related-To: NEO-12273, NEO-9630
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
New query option
ocloc query SUPPORTED_DEVICE
allows to generate a YAML file containing
information about supported devices for:
- the current version of ocloc on Windows
- the current and previous versions of ocloc on Linux
Each version of ocloc build needs to set
NEO_OCLOC_CURRENT_LIB_NAME
NEO_OCLOC_FORMER_LIB_NAME
cmake defines for the ocloc to be able to
find a previous lib and query its supported devices.
Example of correct format:
NEO_OCLOC_FORMER_LIB_NAME=libocloc-1.0.so
NEO_OCLOC_CURRENT_LIB_NAME=libocloc-2.0.so
Related-To: NEO-9630
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
Expands support for deprecated acronyms to ids query.
Additionally, this commit changes default devices for legacy
acronyms.
Related-To: NEO-10190
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
- Move logic from product helper to compiler product helper
- Add method for adjusting fp16 and extra capabilities using release
helper (if present).
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Expands support for deprecated acronyms to fatbinary. Previously,
these were allowed only in single-target builds.
Related-To: NEO-10190
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
Before this PR, bindless build option isn't enabled in ocloc by default on dg2.
So aot built program still use bindful kernel.
This PR appends bindless option to ocloc according on releaseHelper config.
Related-To: NEO-7063
Signed-off-by: He, Wenju <wenju.he@intel.com>
Products for which zebin has been set as default format in OCLOC:
- ICELAKE_LP
- TIGERLAKE_LP
- ROCKETLAKE
- ALDERLAKE_S
- ALDERLAKE_P
- ALDERLAKE_N
The default format does not override `--format` parameter.
Related-To: NEO-8334
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
These error codes are used as return codes from ocloc api.
As such, it's useful to have them defined in the ocloc api header.
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
This PR ensures that the genHash will be the same
whether the cl_cache is re-used or just created.
So it has to be regenerated after compilation
to make sure it's created with non NULL irBinary.
It also allows to cache debugDataBinary.
Minor: Rename NEO_PERSISTENT_CACHE -> NEO_CACHE_PERSISTENT in FAQ,
since this version is used in code.
Related-To: NEO-8288, NEO-8092
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
Clang 13+ requires (1) that each enabled extension be accompanied by
corresponding OCL C extension macro definitions. Fix the extension string for
empty device cases to conform to that - pass the same language feature macros
as we would for regular image support.
(1) release/14.x/clang/lib/Basic/OpenCLOptions.cpp#L142-L149
Related-To: HSD-18031230472
Signed-off-by: Artem Gindinson <artem.gindinson@intel.com>
This change matches the appropriate aot config
for the combination of device ID and revision ID.
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7905
- new option "-o [filename]" allows to set output binary filename, ocloc
will not add any extension to the name
- no other files will be produced (.spv/.cpp/.dbg)
Related-To: NEO-7935
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
We want to report unrecognized device only after verifying
all possible variants, including deprecated ones.
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-7903