-
Notifications
You must be signed in to change notification settings - Fork 127
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
Make GFXRECON_PAGE_GUARD_ALIGN_BUFFER_SIZES true by default #1228
Comments
Yes. Setting
Page guard sees mappings and is not aware what's inside those mappings. So I don't think it's going to be some straightforward change to make page guard aware of that. I guess the logic behind having I understand the default false is a source of problems with the CI which leads to a lot of wasted time. I agree with setting this to true by default. |
If an app creates a lot of small buffers, having a default value of true for Is it the case that a more descriptive name for this variable might be |
No I think For example:
|
FWIW, I support having this on by default. I would propose naming it GFXRECON_PAGE_GUARD_OBJECT_PAGE_ALIGNMENT though, since it isn't just about buffers and the point is the page alignment, not the padding in itself. And do you really need to modify the size parameter as well as the alignment parameter? |
After thinking about it, I'm a little concerned that making
@panos-lunarg Do you think we could work around that somehow? Like mark buffers that share pages so that we repair the other buffers within the page after reads or some such? |
The logic behind I think it can be modified to handle that but it's not going to be a straightforward/simple change. |
If we don't set it to be the default, we should potentially set it in CI more frequently than we do. |
I would say we should make it the default and perhaps add a little documentation section on tweaking for fidelity for advanced users. I keep coming back to the first experience of a new user. As developers of the tool its hard to appreciate the user experience of trying us out and having a bunch of arcane environment variables and flags to twiddle to get going. For that person, they have no idea whether we are just completely broken: they won't have the confidence that one of these tweaks is going to work. Let's get them up and running and then they can dial in settings for specific needs like ultimate fidelity later. That docs section: Guide to Maximum Fidelity in Capture and ReplayWarning, this section covers features for advanced users with very specific needs. These features may make it much harder to achieve a working capture and may require considerable tweaking and you may ultimately find that a correct capture is impossible with them due to the usage of the target API by the application to be captured. ... explanation ensues |
Fixed by #1431 |
A note. When an application uses During capture with GFXRECON_PAGE_GUARD_ALIGN_BUFFER_SIZES , we pad the size returned from But then in However, because the application did not allocate the implementation's stated If the application could be captured successfully with no rendering errors or crash, then this VVL message is probably harmless. |
If the option
GFXRECON_PAGE_GUARD_ALIGN_BUFFER_SIZES
is not set, is it really possible to get corruption? Or has PageGuard tracking improved so that we don't have missing updates for overlapping allocations? I don't know enough about the implementation to say. If so, shouldn't we makeGFXRECON_PAGE_GUARD_ALIGN_BUFFER_SIZES
the default?The text was updated successfully, but these errors were encountered: