Vulkan CTS

 * Add result buffer invalidates to depth stencil resolve tests
 * Add missing checks for sampleShading feature
 * Make random number usage platform independent
 * Fixes 64bit random values for 32bit CTS build
 * Pipeline barriers flushing buffer data to host
 * Remove conformance version test from Android
 * Fix Android WSI incremental present image tests
 * Exclude dEQP-VK.ssbo.layout.random.scalar.75
 * Split shared_presentable_image tests into more dimensions to avoid timeout
 * Fix Android WSI shared presentable image test OOM
 * Fix Android WSI shared presentable image tests
 * Fix Clang 8 and GCC 9 warnings
 * Fix sample read tests to use sample rate shading
 * Fix image_extent test to handle OOM errors
 * Check for toplevel sparse binding support bit in sparse pipeline tests
 * Add a checker for vkQueuePresent returning VK_SUBOPTIMAL_KHR
 * Fix more sampleShading issues in dEQP-VK.pipeline.multisample_shader_builtin.*
 * Fix for SSBO offset alignment
 * Split incremental_present tests into more dimensions to avoid timeout
 * Fixes protected memory swapchain image format oom
 * Require variablePointersStorageBuffer feature in pointer_parameter tests
 * Fixes precise occlusion query tests
 * Waiver for device-scope core memory model tests.
 * Add GeometryPointSize feature check
 * Add feature checks to shader builtin tests
 * Check for imageCubeArray feature in image tests
 * Check for required features in memory model tests
 * Fix image sizes for formats that need a multiple of 2.
 * Check for largePoints feature and add 1px test variant
 * Remove incorrect unroll_dont_unroll test
 * Don't set sampleShadingEnable in dEQP-VK.pipeline.framebuffer_attachment.*
 * Fix stack underflow in incremental present test
 * Fix regression in subgroups tests after merging 393912cd
 * Fixes linear support check for pipeline tests
 * Check for depthBiasClamp feature before using it
 * Check for imageCubeArray support before using VK_IMAGE_VIEW_TYPE_CUBE_ARRAY
 * Reduce expected precision of RGB10A2 filtering
 * Fix memory initialisation in subgroups tests
 * Fixes pipeline tests to check for maxSamplerLodBias
 * Add float 16 calculation into FMA tests
 * Create YCbCr with PREDEFINED layout
 * Check for geometry shader support when testing adjacency topologies
 * Add hasDisplay check after createWsiDisplay throws
 * Fix uninitialized variable reported by gcc 8.3
 * Fix element size for R16G16B16A16_UNORM.
 * Fixed buffer memory type for protected test
 * Check for geometry shader support when testing adjacency topologies
 * Missing format checks for vertex attribute and color attachments in input_ouput tests
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I7f00708e05e1cf20c6439e52287d21eacf32ca01
tree: b42bd674d1843d6c303f8b7d2fa0d0d9f5562a0e
  1. .github/
  2. android/
  3. data/
  4. doc/
  5. execserver/
  6. executor/
  7. external/
  8. framework/
  9. modules/
  10. scripts/
  11. targets/
  12. .editorconfig
  13. .gitignore
  14. .travis.yml
  17. CMakeLists.txt
  21. NOTICE
  22. OWNERS


This repository contains a GPU testing suite called dEQP (drawElements Quality Program). dEQP contains tests for several graphics APIs, including OpenGL ES, EGL, and Vulkan.


Up-to-date documentation for the dEQP is available at Android Open Source Project site.

The .qpa logs generated by the conformance tests may contain embedded png images of the results. These can be viewed with the Cherry tool.

Khronos Vulkan Conformance Tests

This repository includes Khronos Vulkan CTS under external/vulkancts directory. For more information see Vulkan CTS README.

Khronos OpenGL / OpenGL ES Conformance Tests

This repository includes Khronos OpenGL / OpenGL ES CTS under external/openglcts directory. For more information see OpenGL / OpenGL ES CTS README.

ANGLE for Android

ANGLE can be built for Android by following the instructions here.

The resulting ANGLE shared object libraries can be linked against and embedded into dEQP.apk with the --angle-path option. This will cause dEQP.apk to use the ANGLE libraries for OpenGL ES calls, rather than the native drivers.

An ABI must be specified and the directory structure containing the ANGLE shared objects must match it so the build system can find the correct *.so files.

Assuming ANGLE shared objects are generated into ~/chromium/src/out/Release/ and dEQP.apk will be generated with --abis arm64-v8a, issue the following commands:

cd ~/chromium/src/out/Release/
mkdir arm64-v8a && cd arm64-v8a
cp ../lib* .

The --angle-path ~/chromium/src/out/Release/ option can then be used to link against and embed the ANGLE shared object files. The full command would be:

python scripts/android/ --sdk <path to Android SDK> --ndk <path to Android NDK> --abis arm64-v8a --angle-path ~/chromium/src/out/Release/