Developed by Mobileye, the open-source OpenCL Tensor & Tiling Library provides easy-to-use, portable, modular functionality to tile multi-dimensional tensors for optimized performance across diverse heterogeneous architectures. Tiling is particularly critical to devices with limited local memory that can partition data for asynchronously pipelining overlapped data import/export and processing.
Go to the OpenCL-TTL GitHub repository
Opencl tagged news
Khronos Group Release OpenCL 3.0.13 Update
Today, Khronos released the OpenCL 3.0.13 maintenance update to improve specification clarity and usability. The specification and documentation can be downloaded from the OpenCL Registry. This release includes upgrades to the OpenCL SDK, including improved pkg-config support for the OpenCL headers and ICD loader. The OpenCL ICD loader also includes a utility to query which OpenCL loader layers are enabled, and upstreams build support for FreeBSD and Windows using MinGW.
Collabora Blog: Machine Learning with Etnaviv and OpenCL
Now we have a driver with previously no compute capabilities running some CL kernels and some OpenCL-CTS tests on the VIM3 NPU. This means that the work done here could also be the basis for implementing GL ES 3.1 compute shaders on Etnaviv.
inVISION Days Keynote: Vision Acceleration and Kamaros Embedded Camera API Standards
Khronos Group President, Neil Trevett, gave a keynote speech at inVISION on November 29th focusing on vision standards & the new Kamaros embedded camera API standard. The video from the keynote is now available (free registration required).
PoCL 3.1 Released with Improved SPIR-V
PoCL 3.1 provides compatibility with the LLVM/Clang 15.0 release, switches to using lowercase device names for the platform setup via the “POCL_DEVICES” environment variable, there has been a major rework to the custom device driver, much improved SPIR-V support, continued work towards implementing a Vulkan driver, and a basic OpenCL cl_khr_command_buffer implementation.
Updates from OpenCL Tooling Task Sub Group: Recently Upstreamed SPIR-V Backend Ready for Discussion at 2022 LLVM Developers’ Meeting
OpenCL Tooling Task Sub Group (TSG) is actively contributing to the LLVM compiler infrastructure project and is determined to bring first-class support for OpenCL and SPIR-V to LLVM. While the latest release of Clang brought the long-awaited support for the OpenCL 3.0 standard, C++ for OpenCL 2021 kernel language, and the SPIR-V generation interface utilizing an external tool llvm-spirv from the SPIRV-LLVM-Translator repository, the work on the native GlobalISel-based SPIR-V backend continues at full speed. SPIR-V updates and many other exciting changes in the SPIR-V and OpenCL world will be discussed in depth at the upcoming 2022 LLVM Developers’ Meeting.
OpenCL 3.0.12 Released With Command Buffers Mutable Dispatch Extension and Enhanced Layers Support
The OpenCL 3.0 specification and SDK for heterogeneous parallel computation are regularly updated with bug fixes, improved documentation, and functional enhancements. The OpenCL 3.0.12 maintenance release on 15 September 2022, included significant new functionality including command buffer enhancements, system layer support, and maintenance updates.
Open-Standard Acceleration APIs for Safety-Critical Graphics, Vision, and Compute
In this EE Times Europe article, Neil Trevett describes how the need for graphics and compute acceleration in embedded markets is growing. Cameras and sensor arrays are increasingly central to many use cases in diverse industries, ranging from automotive to industrial, and are generating increasingly rich data streams that require sophisticated processing. At the same time, advanced user interfaces are being developed using high-quality 3D graphics and even augmented-reality technology. However, the need to deploy accelerated processing, combined with the complexities of safety-critical certification, has created a confusing landscape of processors, accelerators, compilers, APIs, and libraries. That has driven up integration costs for embedded accelerators, which in turn has constrained innovation and time-to-market efficiencies.
Open standards have an important role in helping hardware and software vendors navigate this complex technology environment. Acceleration standards for the embedded market can enable cross-platform software reusability, decouple software and hardware development for easier deployment and integration of new components, provide cross-generation reusability, and facilitate field upgradability. Such standards reduce costs, shorten time to market, and lower the barriers to using advanced techniques such as inferencing and vision acceleration in compelling real-world products.
How Open Acceleration Standards are Driving Safety-Critical Development
Khronos Group President, Neil Trevett, shares how open standards have an important role mitigating the complexities of safety-critical certification in a confusing landscape of processors, accelerators, compilers, APIs, and libraries, that drive up integration costs for embedded accelerators, which in turn has constrained innovation and time-to-market efficiencies.
PoCL 3.0 Released
PoCL is a portable open source (MIT-licensed) implementation of the OpenCL standard. It likely supports the minimal v3.0 feature set (official conformance stamp not yet applied for). In addition to being an easily portable multi-device (truly heterogeneous) open-source OpenCL implementation, a major goal of this project is improving interoperability for diversity of OpenCL-capable devices by integrating them to a single centrally orchestrated platform. Another key goal is to enhance performance portability of OpenCL programs across device types utilizing runtime and compiler techniques.
Upstream PoCL currently supports various CPUs, NVIDIA GPUs via libcuda and ASIPs (experimental, see: http://openasip.org). It is also known to have multiple (private) adaptations in active production use.
POCL 3.0-RC1 Released For OpenCL 3.0 Implemented On CPUs
With the release of Portable Computing Language (POCL) 3.0-RC1, there is now initial support for OpenCL 3.0 running on CPUs with LLVM 14+. In addition, LLVM/Clang 14 support and improved tracing, scripts for converting traces into Chromium trace visualizer format are new major features.
OpenCL 3.0.11 Specification Released
OpenCL 3.0.11 adds two new extensions and continues the regular release cadence for specification bug fixes and clarifications. The cl_khr_subgroup_rotate extension enables an OpenCL kernel to rotate values among work-items in a subgroup for increased data exchange efficiency in many algorithms. The cl_khr_work_group_uniform_arithmetic extension enables an OpenCL kernel to use new work-group scan and reduction operators which can boost the performance of many use cases—and is ideal to accelerate C++ scan and reduction functions in SYCL 2020 implementations targeting OpenCL as a backend.
Khronos Opens Machine Learning Forum for Anyone to Join
Join us to help drive the evolution of Machine Learning acceleration standards. ML developers lament the growing fragmentation in the ML ecosystem. Khronos knows that open and royalty-free standards can play an essential role in reducing fragmentation, reducing costs, and providing the industry participants the opportunity to grow. Based on feedback from previous summit and discussions, Khronos is creating a coalition of interested parties to meet the needs of the ML community for hardware acceleration.
Khronos Ships New OpenCL SDK Upgrades
The release of the OpenCL 3.0 specification was a significant milestone for this open standard for low-level heterogeneous parallel programming, creating a pervasive baseline that can be cleanly extended with new functionality requested by developers. But a strong open standard ecosystem is much more than just an API document and Khronos is making significant investments to improve the OpenCL developer experience. Read on to discover the latest updates to the OpenCL SDK and what is coming on the SDK roadmap!