LATX, opt: Skip low-value AOT generation - #422
Open
ganjue66da wants to merge 1 commit into
Open
Conversation
Track recovered and dynamically translated TB counts on serialized translation paths. In automatic mode, generate AOT on exit or before a TB flush only when dynamic TBs account for at least five percent of all observed TBs. Use plain counters to avoid unnecessary atomic operations. Count only saveable TBs, remove a TB from the counters when it is invalidated, and keep the runtime count marker out of AOT files. Add LATX_AOT_GENERATE to force generation on or off when automatic policy is not appropriate. Signed-off-by: Wenqiang Wei <weiwenqiang@mail.ustc.edu.cn>
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.
Motivation
Avoid spending AOT generation time and cache space on translation blocks that are unlikely to provide useful reuse.
Changes
Validation
ninja -C build32 latx-i386ninja -C build64 latx-x86_64upstream/masterplus this commit.Scope
This PR contains one optimization commit and no local build output or test artifacts.