-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Add documentation on how VN numbers memory #60476
Conversation
Tagging subscribers to this area: @JulieLeeMSFT Issue DetailsFor the past few days I've been looking into various issues related to #58312 and in the process enhancing my own understanding of VN. It took me quite the long time to fully untangle how the "map-based" numbering actually works, so I decided it would be useful to leave a (rather large) note to future readers of this code. @dotnet/jit-contrib
|
7dce9d7
to
f73e590
Compare
f73e590
to
a939fbb
Compare
I did some digging to see if we could refer to any papers here. The "functional" model for the store is similar to what one sees in various abstract program analyses. But I didn't find any exact matches. @BruceForstall seems like you originally reviewed some of Dave Detlefs' work here, do you happen to recall if there was any theoretical writeup? The changesets (circa 2012) do not mention any. |
Looks like we do indeed have some detailed docs written when VN was first being developed, though no links to journal or conference papers. Hopefully we can share these soon. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like a good start. I will try to find some time to translate the internal doc we have into markdown so we can share it.
@jakobbotsch PTAL
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, thanks for writing documentation.
For the past few days I've been looking into various issues related to #58312 and in the process enhancing my own understanding of VN. It took me quite the long time to fully untangle how the "map-based" numbering actually works, so I decided it would be useful to leave a (rather large) note to future readers of this code.
@dotnet/jit-contrib