Vulkan Ready To Take On Safety-Critical Market With Vulkan SC 1.0
Last week The Khronos Group introduced Vulkan SC 1.0 in providing safety-critical Vulkan support for allowing this modern graphics API to used in new areas requiring maximum safety requirements.
Vulkan SC is effectively the successor to OpenGL SC, the safety critical subset of OpenGL for use across automobiles, avionics, military, medical, industrial, and other areas requiring stringent safeguards. OpenGL SC 2.0 released back in 2016 and based on OpenGL ES 2.0 compared to the original OpenGL SC 1.0 derived from OpenGL ES 1.0 / OpenGL 1.3. With six years having passed and rich visuals coming to even more safety-critical environments, Vulkan SC 1.0 is ready to enter the field for safety-critical graphics.
The Vulkan SC 1.0 specification is based on the Vulkan 1.2 API while removing functionality that is not relevant/necessary for safety-critical use-cases. Vulkan SC 1.0 can also better deal with run-time faults and other issues while also shifting more of the graphics pipeline work to pre-compilation / setup phases rather than run-time. With Vulkan SC 1.0, "All Vulkan SC pipelines are compiled offline and can be statically analyzed to understand the dataflow and the amount of memory used by the pipeline processing. The memory needed for pipeline execution can then be reserved at device creation time as fixed size pools to minimize memory usage and avoid the need for runtime memory allocation. Similarly, Vulkan SC enables the application to statically preallocate the upper bound of application memory requirements, avoiding the need for runtime dynamic memory management."
While safety-critical graphics is likely not of interest for too many Phoronix readers, those wishing to learn more can do so via the Khronos announcement and the Vulkan SC overview for more of the technical details.
Vulkan SC is effectively the successor to OpenGL SC, the safety critical subset of OpenGL for use across automobiles, avionics, military, medical, industrial, and other areas requiring stringent safeguards. OpenGL SC 2.0 released back in 2016 and based on OpenGL ES 2.0 compared to the original OpenGL SC 1.0 derived from OpenGL ES 1.0 / OpenGL 1.3. With six years having passed and rich visuals coming to even more safety-critical environments, Vulkan SC 1.0 is ready to enter the field for safety-critical graphics.
The Vulkan SC 1.0 specification is based on the Vulkan 1.2 API while removing functionality that is not relevant/necessary for safety-critical use-cases. Vulkan SC 1.0 can also better deal with run-time faults and other issues while also shifting more of the graphics pipeline work to pre-compilation / setup phases rather than run-time. With Vulkan SC 1.0, "All Vulkan SC pipelines are compiled offline and can be statically analyzed to understand the dataflow and the amount of memory used by the pipeline processing. The memory needed for pipeline execution can then be reserved at device creation time as fixed size pools to minimize memory usage and avoid the need for runtime memory allocation. Similarly, Vulkan SC enables the application to statically preallocate the upper bound of application memory requirements, avoiding the need for runtime dynamic memory management."
While safety-critical graphics is likely not of interest for too many Phoronix readers, those wishing to learn more can do so via the Khronos announcement and the Vulkan SC overview for more of the technical details.
3 Comments