Khronos Blog

Announcements, articles, and blurbs from Khronos and Khronos members about Khronos tech, conformant products, and more. If you are a interested in submitting a blog post, please check out our Blog Guidelines.

SuperComputing (SC19) is the largest gathering of high performance computing experts in the world and it kicks off this weekend, Sunday, November 17 in Denver, CO.

Today, The Khronos® Group releases the Vulkan® Unified Samples Repository, a new central location where anyone can access Khronos-reviewed, high-quality Vulkan code samples in order to make development easier and more streamlined for all abilities. Khronos and its members, in collaboration with external contributors, created the Vulkan Unified Samples Project in response to user demand for more accessible resources and best practices for developing with Vulkan.

On September 19 at AutoSens Brussels, Stephane Strahm of Kalray will be joining other attendees to discuss options for addressing the increasingly complex challenges facing automotive vision system engineers. Pushed by developments in markets such as Advanced Driver Assistance Systems (ADAS) and autonomous vehicles, maintaining component interoperability in increasingly complex vehicle subsystems is proving to be a big obstacle.

Big news! 3D software developer, Autodesk has joined The Khronos Group. Autodesk is an industry-leading provider of 3D design, engineering and entertainment software, that joined the 3D Formats Working Group to support the Khronos glTF file format and the 3D Commerce Exploratory Group, a group of companies exploring standards and guidelines for the production and distribution of real-time 3D representations of products.

In 2016, the Uber Visualization team released an open source version of and, two Khronos Group WebGL™-powered frameworks for visualizing and exploring huge geospatial data sets on maps. Since then, the technology has flourished into a full-fledged suite of over a dozen open source WebGL and GPGPU data visualization libraries and tools, known collectively as, the newest addition to the family, adds support for loading and rendering glTF™ assets across the tech stack. This unlocks the ability to include rich 3D content within data visualization applications built using and, enabling a variety of interesting new use cases. In this post, we’ll show some applications and walk through how you can use and glTF, Khronos’ open standard 3D file format, to quickly create a geospatial data visualization that renders tens of thousands of 3D models.

Earlier today, Google and Binomial announced that they have partnered to open source a sophisticated texture compressor and a high-performance transcoder for Binomial’s cross-platform Basis Universal texture format. This format can help solve a long-standing problem in the 3D ecosystem: how can 3D textures assets be efficiently packaged or transmitted for an application in a way that is both compact AND can be efficiently processed by the wide diversity of GPU hardware texture engines - each of which has a preferred native format?

The recently formed Khronos OpenCL Tooling Subgroup has been focused on developing and enhancing open source tools and components, targeted at embedded systems and heterogeneous computation applications; the new tools and resources are available to the entire OpenCL ecosystem.

Vulkan is an extremely powerful new-generation graphics and compute API that affords developers considerable flexibility—but many developers are realizing that what works best for desktops may not deliver optimal results on mobile. That’s why Arm Technology has put together the best practices for Vulkan developers on mobile.

The Khronos® OpenCL™ working group recently created a new Tooling Subgroup with the aim of improving the tools ecosystem for this widely-used open standard for heterogeneous computation—in particular, boosting the development of tooling components that can be shared by multiple vendors. Subgroup members have been meeting regularly to coordinate the overall direction for OpenCL tools, with an emphasis on strengthening the development of tools in open source, particularly by encouraging collaboration between the OpenCL and LLVM communities.

To jointly advance accessibility of 3D geospatial content, The Khronos Group recently formalized a liaison with the Open Geospatial Consortium(OGC). One of the first victories of this collaboration between the computer graphics and geospatial communities is a new OGC Community Standard addressing massive scale 3D pioneered by longtime Khronos contributors, the Cesium team.

The Khronos Safety Critical Advisory Forum (KSCAF) gathers safety critical experts from a wide range of disciplines, such as transportation and medical imaging, who have experience developing software and products to widely adopting standards. The goal of KSCAF is to develop guidelines and recommendations for engineers creating open standard APIs within Khronos, and elsewhere in the industry, so that those standards can help streamline the product safety certification process. The Forum’s chair looks back on a successful 2018, with plans to expand in the new year ahead.

To further its goal of passing trained frameworks to embedded inference engines, the Khronos Group adds to its existing converters with two new bidirectional converters. Now available on the NNEF GitHub, these new tools enable easy conversion of trained models, including quantized models, between TensorFlow or Caffe2 formats and NNEF format.

The Vulkan/SPIR-V memory model was built on the foundation of the C++ memory model, but ended up diverging in a number of places.

A lot of how GPU programming models work across modern graphics APIs has evolved through years of development, reflecting the markets that those APIs have targeted. Naturally, the Vulkan/SPIR-V memory model has made several decisions that reflect this. We added several new facets to the model, including scopes, storage classes, and memory availability and visibility operations to name some of the more prominent ones.

However, It is not a strict superset either, and there are a few places where some features have been omitted for similar reasons. For example, sequential consistency is not supported, and forward progress guarantees are limited.

This post aims to give a high-level overview of the differences, explaining what the differences are, why they are different, and how (if at all) C++ concepts can map to the Vulkan/SPIR-V memory model. It is aimed primarily at people already familiar with the C++ memory model who either want to get some insight into what the differences are or those who are curious about why we took the direction we did.

Khronos has released a provisional Vulkan Memory Model Specification that includes extensions for Vulkan, SPIR-V, and GLSL and gives Vulkan developers additional control over how their shaders synchronize access to should cooperate safely over memory operations in a parallel execution environment. In tandem with the extension specification, Khronos has released memory model extension conformance tests to enable implementers to do early tests on their shader compilers to ensure that the specified memory synchronization is implemented correctly. The memory model will have an Alloy description of the extension functionality to enable formal modeling and experimentation.