-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Add documentation for hot/cold splitting #73029
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
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,173 @@ | ||||||
| # Hot/Cold Code Splitting | ||||||
|
|
||||||
| This document describes the current state of hot/cold splitting in the JIT. | ||||||
|
|
||||||
| Hot/Cold splitting is an optimization where generated code is split into frequently-executed ("hot") and | ||||||
| rarely-executed ("cold") parts and placed in separate memory regions. Increased hot code density better leverages | ||||||
| spatial locality, which can improve application performance via fewer instruction cache misses, less OS paging, and | ||||||
|
||||||
| spatial locality, which can improve application performance via fewer instruction cache misses, less OS paging, and | |
| spatial locality, improving application performance via fewer instruction cache misses, less OS paging, and |
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.
(you get the idea)
Outdated
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.
I think somebody could get confused by the mixed use of tense here and not be entirely sure what the "current state" actually is.
Consider sectioning this part off as ## Background and describing just the before state in past tense.
Outdated
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.
| In the absence of PGO data, the JIT assumes exceptions occur rarely to justify moving handlers to the cold section. | |
| In the absence of PGO data, the JIT assumes exceptions occur rarely; this justifies moving handlers to the cold section. |
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.
Nit -- keep an eye out for passive voice and try to avoid it where you can. Here it seems pretty easy: