Khronos Conformance Testing Suite for Vulkan, OpenGL, OpenGL ES, EGL, and Vulkan SC APIs.
VK-GL-CTS is the Khronos Conformance Testing Suite for graphics and compute APIs, including Vulkan, OpenGL, OpenGL ES, EGL, and Vulkan SC. It provides a comprehensive set of tests to validate that API implementations meet Khronos specifications, ensuring compatibility and reliability across different hardware and drivers.
GPU driver developers, hardware vendors, and graphics API implementers who need to verify conformance to Khronos standards.
As the official Khronos testing suite, it offers authoritative validation for multiple graphics APIs, supports targeted builds for efficiency, and includes specialized tests for modern features like Vulkan video.
Khronos Vulkan, OpenGL, and OpenGL ES Conformance Tests
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports Vulkan, OpenGL, OpenGL ES, EGL, and Vulkan SC, providing comprehensive validation across multiple graphics APIs as per Khronos specifications.
As the Khronos-developed suite, it offers authoritative testing to ensure implementations meet required standards for compatibility and reliability, essential for driver and hardware certification.
Allows building specific binaries like deqp-vk using CMake target selection or SELECTED_BUILD_TARGETS to optimize build time and disk usage, as detailed in the README.
Includes support for building and testing with ANGLE on Android, enabling validation of OpenGL ES implementations on mobile platforms with step-by-step instructions in the README.
Provides test suites for Vulkan video decode and encode, with scripts like fetch_video_decode_samples.py to download necessary video clips for comprehensive media testing.
Documentation is divided between Khronos member and non-member wikis, which can limit access and make finding up-to-date information more difficult for external developers.
Building for platforms like Android requires multiple steps, dependencies on external tools like ANGLE, and careful configuration, as outlined in the README, increasing initial setup time and complexity.
The README admits that target subset selection may not have been thoroughly tested in all environments, potentially leading to issues or instability in custom builds outside official conformance submissions.
Running video tests requires executing separate Python scripts to download video clips, adding an extra layer of setup and maintenance that can be cumbersome for automated testing pipelines.