From 8a26c94351d0fda7e945c086cdc110b2890433cc Mon Sep 17 00:00:00 2001 From: Pyry Haulos Date: Fri, 22 Jan 2016 15:32:21 -0800 Subject: [PATCH] Add first draft of conformance submission package description Change-Id: If6581ee5ae7b497f5f7cec7bce0e42598860a5bc --- external/vulkancts/README.md | 58 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 50 insertions(+), 8 deletions(-) diff --git a/external/vulkancts/README.md b/external/vulkancts/README.md index a9260f9..9ddad79 100644 --- a/external/vulkancts/README.md +++ b/external/vulkancts/README.md @@ -97,6 +97,20 @@ Vulkan CTS mustpass can be re-generated by running: $ python /external/vulkancts/build_mustpass.py +Pre-compiling SPIR-V binaries +----------------------------- + +For distribution, and platforms that don't support GLSL to SPIR-V compilation, +SPIR-V binaries must be pre-built with following command: + + $ python external/vulkancts/build_spirv_binaries.py + +Binaries will be written to external/vulkancts/data/vulkan/prebuilt/. + +Test modules (or in case of Android, the APK) must be re-built after building +SPIR-V programs in order for the binaries to be available. + + Running CTS ----------- @@ -144,18 +158,46 @@ Process can be followed by running: Test log will be written into /sdcard/TestResults.qpa -Pre-compiling SPIR-V binaries ------------------------------ +Conformance Submission Package Requirements +------------------------------------------- -For distribution, and platforms that don't support GLSL to SPIR-V compilation, -SPIR-V binaries must be pre-built with following command: +Conformance submission package must contain following: - $ python external/vulkancts/build_spirv_binaries.py +1) Full test logs (TestResults.qpa) from CTS runs against all driver builds +2) Result of "git status" and "git log" from CTS source directory +3) Any patches used on top of release tag +4) Conformance statement -Binaries will be written to external/vulkancts/data/vulkan/prebuilt/. +Test logs (1) should be named TestResults-.qpa, for example +TestResults-armeabi-v7a.qpa. On platforms where multiple different driver +builds (for example 64-bit and 32-bit) are present, CTS must be ran against +all of them. -Test modules (or in case of Android, the APK) must be re-built after building -SPIR-V programs in order for the binaries to be available. +CTS build must always be done from clean git repository that doesn't have any +uncommitted changes. Thus it is necessary to run and capture output of "git +status" and "git log" (2) in the source directory: + + git status > /git-status.txt + git log ..HEAD > /git-log.txt + +Any changes made to CTS must be committed to the repository, and provided +as part of the submission package (3). This can be done by running: + + git format-patch -o ..HEAD + +In general bugfixes and changes to platform-specific code (mostly under +framework/platform) are allowed. + +Conformance statement (4) must be included in a file called STATEMENT- +and must contain following: + + CONFORM_VERSION: + PRODUCT: + CPU: + OS: + +Note that product/cpu/os information is also captured in dEQP-VK.info.* tests +if vk::Platform::describePlatform() is implemented. Vulkan platform port -- 2.7.4