Vulkan CTS

New Tests:
 * Attachment rate tests
 * Extend multisample tests to support FSR
 * Test contradictory parameters on swapchain creation
 * TRANSIENT_ATTACHMENT_BIT store/load op test
 * Execute FDM tests with dynamic rendering
 * Test non-Sample Shading FragCoord.xy
 * Add tests for VK_EXT_primitive_topology_list_restart
 * Pick correct memoryTypeIndex for AHB
 * Test blitting from ASTC formats
 * Modify dual source blend tests to use discard
 * Missing coverage for vkCmdCopyQueryPoolResults
 * Checked .inl files back into the repo
 * VK_EXT_rgba10x6_formats
 * Add tests for rasterization order attachment access
 * Add suite of div by zero tests
 * Test VK_KHR_global_priority
 * Add buffer feature check for depth/stencil formats
 * Split multiple interpolation tests using the sample decoration
 * Portability: fix border_swizzle tests
 * Test VK_KHR_roadmap_2022
 * Add coverage for sampling compressed cubemaps that has been written
 * Add coverage for sampling a compressed texture that has been written
 * Add tests for buffer size requirements
 * Test anisotropic filtering of single-level images
 * Test no-op image layout transitions in VK_KHR_synchronization2
 * Improve coverage of MSAA copies with different layouts
 * Add compute test with zero dispatch size
 * Depth/Stencil descriptor tests
 * Add custom border color swizzle tests
 * Further VK_NV_mesh_shader test variants and fixes
 * Add power of two checks for physical device limits
 * Fix dot product with saturation tests
 * Extend interpolateAt* tests
 * Add fragment operations occlusion query tests
 * Add tests for VK_EXT_depth_clip_control
 * Stencil resolve tests without samplerate shading
 * Add a batch of GraphicsFuzz coverage tests
 * Verify that timeline semaphores cannot import/export SYNC_FD
 * Execute FDM tests with legacy renderpass
 * Cover vkGetBufferMemoryRequirements*() routines tests
 * Re-enable protected memory tests
 * Test multiview with different depth ranges
 * Improve coverage of MSAA copies
 * Revert "Exclude cov-function-with-nested-loops-called-from-nested-loops"
 * Various methods passing of PhysicalStorageBuffer tests
 * Fix and enable dynamic rendering multivew coverage
 * Add dynamic rendering to attachment rate tests
 * Enable packed formats for border swizzle tests
 * Add tests for VK_NV_mesh_shader
 * Test vkCreateDevice with unsupported features
 * Add basic signaled fence tests
 * Ensure that compute shaders have a subgroup size that is uniform in command scope

 * Add missing feature check to MS copy tests
 * Create command pool with command buffer reset in RT tests
 * Fix image requirements according to its usage
 * Add format check to SharedPresentableImageTest
 * Initialise dot product required feature struct
 * Use signed sampled type for signed integer formats
 * Fix getting capture address in RT capture replay tests
 * Fix warnings reported by clang 13
 * Remove vkDestroyBuffer
 * Fix wrong conversion from shared pointer to int.
 * Re-enable Clang warning for Amber
 * Disable depth clamp for graphics pipeline creation tests.
 * Fix for dEQP-VK.api.buffer_memory_requirements.* tests
 * Fix memory requirements tests for sparse images
 * Fix for potentially uninitialized variables
 * Zero initialize XFB counter buffer
 * Fix for issues in dynamic rendering tests
 * Fix vktFragmentShadingRateBasic tests
 * Remove dynamic rendering multiview tests
 * Add missing barrier to fix multi-core issue
 * Fix stencil layout transitions in samplemask tests
 * Fix vkAttachmentRateTests
 * Fix strided device address regions in RT misc tests
 * Fix mandatory features checks for vk1.3
 * Remove redundant load/store op none tests
 * Portability: avoid triangle fans
 * Fix validation errors in renderpass tests
 * Remove invalid semaphore import/export tests
 * Skip the "two_draw" variants of zero_stride_with_offset tests
 * Disable two warnings for old Amber versions
 * Fix workgroup memory tests for int16s
 * Fix barrier for initializing resolve attachment image to use proper level
 * Fix allocation of system memory.
 * Rename various things for more inclusive language
 * Fix requirements tests for multiplane images
 * Don't silently drop features that were requested
 * Fix mismatched ray payload in descriptor set random tests
 * Update kc-cts version
 * Reduce complexity of some random cases
 * Fix image view type for multiview multi draw tests
 * Fix sType Tooling Info tests
 * Avoid querying non-supported hardware features
 * Remove api.tooling_info.validate_instance_layers
 * Pass force to fetch_sources
 * Fix post-clear barrier in depth/stencil descriptor tests
 * Fix depth_different_ranges tests
 * Remove time measurement on deferred host build tests
 * Add missing feature check
 * Fix bug in calcFloatDiff
 * Reduce framebuffer size of dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store
 * Fix RGBA10x6 feature check
 * GCC 11 build fixes
 * Allow rounding error when reading back Z buffer
 * Fix extended_dynamic_state tests
 * Initialise new member of ImageTestParams struct
 * Relax protected heap allocation tests - continuation
 * Fix Buffer Memory Requirements tests compilation errors
 * Fix multisample_with_fragment_shading_rate tests
 * Fix issues in load_store_op_none tests
 * Enable anisotropic tests for mipmap images
 * Additional warning fix for Clang 13
 * Fix amber vs cts device feature requirements
 * Suppress GCC 11 conversion warning
 * Relax precision for matrix precision tests
 * Reduce framebuffer size of spv-stable-pillars-O-op-select-to-op-phi
 * Improve checkSupport in memoryRequirements tests
 * Fix validation errors in buffer memory requirement tests
 * Change cache type to NO_CACHE in duplicate_batch_pipelines_no_cache test
 * Update vkDeviceFeatureTest.inl
 * DeqpTestRunner: fix deqpLogFilename
 * Fix ray tracing closedFan2 tests
 * Add missing barrier when rendering to the same view mask.
 * Add missing checking of integer dot product features
 * Fix use a device with protected memory enabled

 * Add conformance version
 * Update fetch_sources to vulkan 1.3
 * Notice of withdrawal of Vulkan CTS 1.2.4.x
 * Update Vulkan headers
 * Zero initialize array in internal tests
 * Update vulkan-docs version
 * Add Samsung Driver ID
 * Add portability_subset to extensions_data.txt
 * Rename some waived tests for dynamic rendering
 * Update checking of VulkanFeatures structs
 * Fix integer overflow in Random::getInt()
 * Generate inl files at build time
 * Remove repeated struct in writeDeviceFeatures2
 * Extract findLSB() and findMSB() to a separate helper file.
 * Allow Vulkan CTS
 * Add Vulkan-Docs to fetch sources
 * Fix inl files
 * Fix NULL/False to std::string conversion errors
 * Add VK_KHR_global_priority to extensions_data.txt
 * Add tcu::Nothing to improve tcu::Maybe usability
 * Update Android test lists for Broadcom waiver
 * Update vulkan-docs to main
Update SPIRV-Tools version

Pulls in fix for nontemporal operand

Components: Framework

Change-Id: I248f7c12094d318682cc80e82db2a876f2aa4634
1 file changed
tree: 67c6f743bbcb32c5d24943e18d9ec29844de3d52
  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. .gitattributes
  14. .gitignore
  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 scripts/qpa_image_viewer.html, by opening the file with a web browser and following its instructions, or using 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/