-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[pgo] Assertion failed '((-slop) <= diff) && (diff <= slop)' during 'Compute edge weights (2, false)' #77450
Comments
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsPipeline: runtime-coreclr pgo Assert failure(PID 11476 [0x00002cd4], Thread: 7904 [0x1ee0]): Assertion failed '((-slop) <= diff) && (diff <= slop)' in 'System.RuntimeType:GetConstructorCandidates(System.String,int,int,System.Type[],bool):ListBuilder`1[System.Reflection.ConstructorInfo]:this' during 'Compute edge weights (2, false)' (IL size 103; hash 0xfc7100fa; Tier1)
File: D:\a\_work\1\s\src\coreclr\jit\fgprofile.cpp Line: 3941
Image: D:\h\w\BE4A09E7\p\corerun.exe cc @AndyAyersMS
|
I just loosened the threshold recently: #76409. Looks like we'll have to loosen even more. |
I'm not able to repro this so far. Probably timing dependen (or maybe harder to repro with the new pgo strategy?). Will keep trying. It's no longer happening in the CI runs. So, removing the blocking label. |
I still can't repro, either with locally built bits or runfo downloaded bits, so am going to close this. Would not be surprising if further tweaks are needed to this assert, but don't want to modify it blindly. So a fix will have to wait for a more consistent repro. |
Looks like it happened again on Saturday's run: |
This one was also intermittent, but I now have it captured via SPMI. |
In this latest case we just slightly over the tolerance limit:
|
Allow up to 1/50 variance between the expected and computed values. Fixes dotnet#77450.
Allow up to 1/50 variance between the expected and computed values. Fixes #77450.
This happened again on 12/24 with pipeline runtime-coreclr libraries-pgo > "checked coreclr Linux arm64 Release". Full log. |
Might be time to just delete this assert; I don't think it provides any real value. |
Stop asserting if we see unusually large discrepancies in the outgoing profile flow from a block. Instead just make a note in the jit dump. Fixes dotnet#77450.
Stop asserting if we see unusually large discrepancies in the outgoing profile flow from a block. Instead just make a note in the jit dump. Fixes #77450.
Pipeline: runtime-coreclr pgo
Config: win-arm64 Checked fullpgo_random_gdv_methodprofiling_only
Link: https://dev.azure.com/dnceng-public/public/_build/results?buildId=62149&view=ms.vss-test-web.build-test-results-tab&runId=1274480&resultId=108923&paneView=debug
cc @AndyAyersMS
The text was updated successfully, but these errors were encountered: