-
Notifications
You must be signed in to change notification settings - Fork 668
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[spirv][vulkan] Enable device query generation and execution #15977
Merged
Conversation
This file contains 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
|
0f7a1a2
to
0950d62
Compare
3b11fb7
to
6f6cb82
Compare
This commit adds a pass to materialize executable required SPIR-V capabilities into proper device queries inside the associated hal.executable.condition ops. Linking is updated accordingly to unique and preseve the feature checks. The Vulkan HAL driver is updated accordingly to probe the implementation and match against the device queries.
6f6cb82
to
94d9598
Compare
benvanik
requested changes
Dec 21, 2023
compiler/src/iree/compiler/Codegen/SPIRV/test/link_executables.mlir
Outdated
Show resolved
Hide resolved
7335b41
to
664a2de
Compare
51c65ca
to
3c2aebe
Compare
benvanik
approved these changes
Jan 8, 2024
Ah, there is a failure on moto edge x30 with adreno GPUs.. https://github.com/openxla/iree/actions/runs/7454190089/job/20281841995#step:6:1517 Annoyingly that Adreno GPUs only support 16bit storage for storage buffer but not uniform buffer.. Though this verifies the whole device feature probing and checks work. :) |
Trying #16075 to see if it makes the bots happy. |
hanhanW
added a commit
to hanhanW/iree
that referenced
this pull request
Jan 9, 2024
hanhanW
added a commit
that referenced
this pull request
Jan 9, 2024
…#16077) Reverts #15977 because it breaks benchmarks on Pixel 6. https://github.com/openxla/iree/actions/runs/7454190089/job/20282009176
antiagainst
added a commit
that referenced
this pull request
Jan 9, 2024
…#16075) This commit relands #15977 with the following changes: * Disable the test requiring 16bit uniform buffer access on Adreno. Moto Edge X30 supports VK_KHR_16bit_storage for only storage buffers, but not uniform buffers, see https://vulkan.gpuinfo.org/displayreport.php?id=14481#features_extensions We request both bits. * Avoid requesting dot product to be accelerated. As long as the `shaderIntegerDotProduct` bit is true, we can use all the integer dot product instructions in SPIR-V. Whether it's accelerated or not does not matter for the purpose of deciding whether the SPIR-V blob is runnable.
banach-space
pushed a commit
to banach-space/iree
that referenced
this pull request
Jan 10, 2024
…iree-org#16077) Reverts iree-org#15977 because it breaks benchmarks on Pixel 6. https://github.com/openxla/iree/actions/runs/7454190089/job/20282009176
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
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 commit adds a pass to materialize executable required SPIR-V
capabilities into proper device queries inside the associated
hal.executable.condition ops. Linking is updated accordingly to
unique and preseve the feature checks. The Vulkan HAL driver
is updated accordingly to probe the implementation and match
against the device queries.
Fixes #15786