Skip to content

Conversation

@BruceForstall
Copy link
Contributor

#94250
and force repeat each function 4x

@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Mar 29, 2024
@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

@BruceForstall
Copy link
Contributor Author

/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr libraries-jitstress

@azure-pipelines
Copy link

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
@BruceForstall BruceForstall force-pushed the FixOptRepeat_ForceRepeat branch from 3347a45 to dbebcaf Compare March 29, 2024 17:43
@BruceForstall
Copy link
Contributor Author

/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr libraries-jitstress

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@BruceForstall BruceForstall mentioned this pull request Mar 29, 2024
@BruceForstall
Copy link
Contributor Author

Diffs

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.

@EgorBo
Copy link
Member

EgorBo commented Mar 30, 2024

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 OPT_CONFIG being Debug only) only and TP jobs work with Release clrjit. I presume TP diff on linux are from that assertprop fix?

@BruceForstall
Copy link
Contributor Author

Ah, ok, the TP non-change makes sense. OptRepeat isn't getting turned on in Release.

@AndyAyersMS
Copy link
Member

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.

@github-actions github-actions bot locked and limited conversation to collaborators May 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants