Lines Matching +full:vulkan +full:- +full:loader
1 # Regres - SwiftShader automated testing
5 Regres is a collection of tools to perform [dEQP](https://github.com/KhronosGroup/VK-GL-CTS)
11 * [Presubmit testing](#presubmit-testing) - An automatic Vulkan
13 * [Continuous integration testing](#daily-run-continuous-integration-testing) -
14 A Vulkan dEQP test run performed against the `master` branch each night. \
16 …[swiftshader-regres.github.io/swiftshader-coverage](https://swiftshader-regres.github.io/swiftshad…
17 * [Local dEQP test runner](#local-dEQP-test-runner) Provides a local tool for
25 Regres monitors changes that have been [put up for review with Gerrit](https://swiftshader-review.g…
30 [[example]](https://swiftshader-review.googlesource.com/c/SwiftShader/+/46369/5#message-4f09ea3e6d0…
47 land', which is determined by the change's `Kokoro-Presubmit`, `Code-Review` and
48 `Presubmit-Ready` Gerrit labels.
53 …`<swiftshader>/tests/regres/ci-tests.json`](https://cs.opensource.google/swiftshader/SwiftShader/+…
54 As new functionally is being implemented, the test lists in `ci-tests.json` may
55 reference known-passing test lists updated by the [daily run](#daily-run-continuous-integration-tes…
60 …wiftshader>/tests/regres/full-tests.json`](https://cs.opensource.google/swiftshader/SwiftShader/+/…
65 Test: <dEQP-test-pattern>
68 `<dEQP-test-pattern>` can be a single dEQP test name, or you can use wildcards
73 [For example](https://swiftshader-review.googlesource.com/c/SwiftShader/+/26574):
78 Test: dEQP-VK.glsl.operator.bool_compare.*
79 Test: dEQP-VK.glsl.operator.binary_operator.equal.*
80 Test: dEQP-VK.glsl.operator.binary_operator.not_equal.*
82 Change-Id: I9d33444d67792274d8027b7d1632235533cfc079
85 ## Daily-run continuous integration testing
87 …wiftshader>/tests/regres/full-tests.json`](https://cs.opensource.google/swiftshader/SwiftShader/+/…
89 [[example]](https://swiftshader-review.googlesource.com/c/SwiftShader/+/46448).
93 [swiftshader-regres.github.io/swiftshader-coverage](https://swiftshader-regres.github.io/swiftshade…
97 Regres also provides a multi-threaded, [process sandboxed](#process-sandboxing),
98 local dEQP test runner with a wild-card / regex based test name matcher.
102 …ftshader/SwiftShader/+/master:tests/regres/run_testlist.sh) `--deqp-vk=<path to deqp-vk> [--filter…
111 -limit int
113 -no-results
115 -output string
117 -shuffle
119 -test-list string
120 path to a test list file (default "vk-master-PASS.txt")
123 …oogle/swiftshader/SwiftShader/+/master:tests/regres/run_testlist.sh) with `--help` to see all avai…
136 …the system's memory using [linux resource limits](https://man7.org/linux/man-pages/man2/getrlimit.…
175 …for review, along with a summary of test result changes [[example]](https://swiftshader-review.goo…
180 …uploaded to [github.com/swiftshader-regres/swiftshader-coverage](https://github.com/swiftshader-re…
181 …iately reflected at [swiftshader-regres.github.io/swiftshader-coverage](https://swiftshader-regres…
182 This process is [described in more detail below](#code-coverage).
183 7. Stages 3 - 5 are repeated for both the LLVM and Subzero backends.
194 cache-key for storing and retrieving data. Both the test lists and version of
198 ### Vulkan Loader usage
200 Applications make use of the Vulkan API by loading the [Vulkan Loader](https://github.com/KhronosGr…
201 library (`libvulkan.so.1` on Linux), which enumerates available Vulkan
206 same API entry functions as the Vulkan Loader. Regres by default will make dEQP
207 load this SwiftShader library instead of the system's Vulkan Loader. It ensures
208 test results are independent of the system's Vulkan setup.
211 Loader's libvulkan.so.1.
215 The [daily run](#daily-run-continuous-integration-testing) produces code
217 [swiftshader-regres.github.io/swiftshader-coverage](https://swiftshader-regres.github.io/swiftshade…
222 #### Per-test generation
225 [clang's `--coverage`](https://clang.llvm.org/docs/SourceBasedCodeCoverage.html)
236 …ools](https://clang.llvm.org/docs/SourceBasedCodeCoverage.html#creating-coverage-reports) for proc…
238 * `llvm-profdata` indexes the raw `.profraw` coverage profile file and emits a
240 * `llvm-cov` further processes the `.profdata` file into something human
243 `llvm-cov` provides many options, including emitting an pretty HTML file, but is
244 remarkably slow at producing easily machine-parsable data. Fortunately the core
245 of `llvm-cov` is [a few hundreds of lines of code](https://github.com/llvm/llvm-project/tree/master…
246 replaces `llvm-cov` with ["`turbo-cov`"](https://cs.opensource.google/swiftshader/SwiftShader/+/mas…
253 If you used 1 bit for each source line, per-line source coverage for all dEQP
257 around 10 MiB (~1100x reduction in size), and supports sub-line coverage scopes.
264 line-column pair:
285 `dEQP-VK.fragment_shader_interlock.basic.discard.ssbo.sample_unordered.4xaa.sample_shading.16x16`
290 dEQP-VK <-- root group name
297 ╰ 16x16 <-- leaf test name
305 non-leaf nodes, and tests as leaf nodes.
337 represent a test, and non-leaf nodes (`a`, `b`, `c`, `d`, `e`, `g`, `i`, `k`,
424 All spans, span-groups and strings are stored in de-duplicated tables, and are
437 The zlib-compressed JSON coverage data is decompressed using
439 [vanilla JavaScript](https://github.com/swiftshader-regres/swiftshader-coverage/blob/gh-pages/index…