-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
FixOptRepeat and force repeating #100447
FixOptRepeat and force repeating #100447
Conversation
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr libraries-jitstress |
Azure Pipelines successfully started running 3 pipeline(s). |
1. Remove an assertion checking assert that can be invalid under JitOptRepeat, where we might lose information that a constant was ever a handle. 2. Disable JIT/Directed/debugging/debuginfo/tester.csproj under OptRepeat: optimizations mess with its debug info expectations. 3. Enable JitOptRepeat under stress
3347a45
to
dbebcaf
Compare
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr libraries-jitstress |
Azure Pipelines successfully started running 3 pipeline(s). |
Huge code size improvements: 4MB or more. TP measurement is odd: on Linux, -0.20% or so, but no change on Windows? Note that there are a lot more "missing" contexts with OptRepeat. |
While I love the size wins 🙂 it's hard to believe that 4 iterations of SSA + VN + assertprop + etc lead to 0.00% TP on most platforms? Perhaps, it's not kicked-in for Release? PS: yeah, looks like JitOptRepeat is Debug/Checked (because of |
Ah, ok, the TP non-change makes sense. OptRepeat isn't getting turned on in Release. |
It will need to be enable-able in release for the experiments to work there. |
#94250
and force repeat each function 4x