[WIP] difftests: integrate spirti for emulating SPIR-V shaders on the CPU.#599
Draft
eddyb wants to merge 1 commit into
Draft
[WIP] difftests: integrate spirti for emulating SPIR-V shaders on the CPU.#599eddyb wants to merge 1 commit into
spirti for emulating SPIR-V shaders on the CPU.#599eddyb wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR uses
spirtifrom the branch corresponding to this (yet unlanded) PR:I've been testing with this command:
The
DIFFTEST_SPIRTIenv var bypasses thewgpurunner ofdifftests, and feeds the SPIR-V blob throughspirtiinstead (alongside with plumbing buffer inputs and outputs).Just to get any tests passing,
spirtiwas augmented with:As a result, this is the summary from the above command:
Some of the remaining failures seem potentially easy to fix, with workgroup-shared memory semantics being the one that's least obvious how to best approach.