Lazily resolve Vulkan commands (actually all indirect commands)#1990
Merged
qining merged 2 commits intogoogle:masterfrom Jun 20, 2018
Merged
Lazily resolve Vulkan commands (actually all indirect commands)#1990qining merged 2 commits intogoogle:masterfrom
qining merged 2 commits intogoogle:masterfrom
Conversation
ben-clayton
reviewed
Jun 17, 2018
Contributor
ben-clayton
left a comment
There was a problem hiding this comment.
Please always explain why you make the change in the CL description. I consider this even more important than describing what you are changing, as you can see that by the diff.
Contributor
Author
|
Reason for this CL just added in the description. Generally, we found, for some cases, the ICD may crash when resolving a command from unsupported Vulkan Extensions. Even though the application may never use the unsupported command, such a crash will also crash our replay. |
This is probably the 'minimum changes' approach. It uses lambda functions, which will take a copy of the handles used for command resolving.
f6fda92 to
401b91c
Compare
AWoloszyn
approved these changes
Jun 20, 2018
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 is to avoid some Vulkan driver (actually some ICDs) crashing when resolving unsupported and never used commands.
This is probably the 'minimum changes' approach. It uses lambda
functions, which will take a copy of the handles used for command resolving.
If we really want to avoid that copy, we probably need to use the template
system to scan through all the commands first and generate c++ template
specialization code. But I think the benefit may be not worth of the extra work?