Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

EgorBo
Copy link
Member

@EgorBo EgorBo commented Jan 31, 2024

This PR slightly refactors PickCandidatesForTypeCheck:

  1. Adds multi-guesses support. For now, only NativeAOT isinst is supported, closes NAOT: isinst with multiple guesses without fallback #97602
  2. Removes some logic that duplicates existing pickGDV
  3. General clean up. E.g. it turned out we called compareCastResults for all candidates while it's only needed for PGO-driven data (to make sure it's not stale).

@ghost ghost assigned EgorBo Jan 31, 2024
@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Jan 31, 2024
@ghost
Copy link

ghost commented Jan 31, 2024

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

Issue Details

TODO: desc

Author: EgorBo
Assignees: EgorBo
Labels:

area-CodeGen-coreclr

Milestone: -

@ryujit-bot
Copy link

Diff results for #97773

Throughput diffs

Throughput diffs for osx/arm64 ran on linux/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.16% to -0.02%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.06%
benchmarks.run_pgo.osx.arm64.checked.mch -0.13%
benchmarks.run_tiered.osx.arm64.checked.mch -0.02%
coreclr_tests.run.osx.arm64.checked.mch -0.04%
libraries.crossgen2.osx.arm64.checked.mch -0.16%
libraries.pmi.osx.arm64.checked.mch -0.08%
libraries_tests.run.osx.arm64.Release.mch -0.09%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.05%
realworld.run.osx.arm64.checked.mch -0.07%
FullOpts (-0.16% to -0.04%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.06%
benchmarks.run_pgo.osx.arm64.checked.mch -0.16%
benchmarks.run_tiered.osx.arm64.checked.mch -0.04%
coreclr_tests.run.osx.arm64.checked.mch -0.08%
libraries.crossgen2.osx.arm64.checked.mch -0.16%
libraries.pmi.osx.arm64.checked.mch -0.08%
libraries_tests.run.osx.arm64.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.05%
realworld.run.osx.arm64.checked.mch -0.07%

Throughput diffs for windows/arm64 ran on linux/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.44% to -0.03%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.06%
benchmarks.run_pgo.windows.arm64.checked.mch -0.44%
benchmarks.run_tiered.windows.arm64.checked.mch -0.03%
coreclr_tests.run.windows.arm64.checked.mch -0.04%
libraries.crossgen2.windows.arm64.checked.mch -0.15%
libraries.pmi.windows.arm64.checked.mch -0.08%
libraries_tests.run.windows.arm64.Release.mch -0.10%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.05%
realworld.run.windows.arm64.checked.mch -0.08%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.09%
MinOpts (-0.00% to +0.01%)
Collection PDIFF
libraries.pmi.windows.arm64.checked.mch +0.01%
FullOpts (-0.53% to -0.05%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.06%
benchmarks.run_pgo.windows.arm64.checked.mch -0.53%
benchmarks.run_tiered.windows.arm64.checked.mch -0.06%
coreclr_tests.run.windows.arm64.checked.mch -0.08%
libraries.crossgen2.windows.arm64.checked.mch -0.15%
libraries.pmi.windows.arm64.checked.mch -0.08%
libraries_tests.run.windows.arm64.Release.mch -0.15%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.05%
realworld.run.windows.arm64.checked.mch -0.08%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.09%

Details here


@ryujit-bot
Copy link

Diff results for #97773

Assembly diffs

Assembly diffs for linux/arm64 ran on windows/x64

Diffs are based on 2,368,028 contexts (1,007,092 MinOpts, 1,360,936 FullOpts).

MISSED contexts: base: 1 (0.00%), diff: 139,290 (5.56%)

Overall (+178,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm64.checked.mch 10,779,100 -652
benchmarks.run_pgo.linux.arm64.checked.mch 67,233,864 +29,104
benchmarks.run_tiered.linux.arm64.checked.mch 23,940,084 -716
coreclr_tests.run.linux.arm64.checked.mch 476,924,568 +180,356
libraries.crossgen2.linux.arm64.checked.mch 55,839,492 -38,600
libraries.pmi.linux.arm64.checked.mch 56,495,516 -14,968
libraries_tests.run.linux.arm64.Release.mch 341,340,364 +42,212
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch 131,109,528 -14,148
realworld.run.linux.arm64.checked.mch 11,150,480 -3,396
smoke_tests.nativeaot.linux.arm64.checked.mch 2,568,016 -472
FullOpts (+178,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm64.checked.mch 10,474,172 -652
benchmarks.run_pgo.linux.arm64.checked.mch 41,299,080 +29,104
benchmarks.run_tiered.linux.arm64.checked.mch 4,201,648 -716
coreclr_tests.run.linux.arm64.checked.mch 128,776,416 +180,356
libraries.crossgen2.linux.arm64.checked.mch 55,837,856 -38,600
libraries.pmi.linux.arm64.checked.mch 56,375,532 -14,968
libraries_tests.run.linux.arm64.Release.mch 126,208,412 +42,212
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch 117,612,064 -14,148
realworld.run.linux.arm64.checked.mch 10,569,556 -3,396
smoke_tests.nativeaot.linux.arm64.checked.mch 2,567,028 -472

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,376,110 contexts (991,070 MinOpts, 1,385,040 FullOpts).

MISSED contexts: base: 1 (0.00%), diff: 141,799 (5.63%)

Overall (+231,612 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 9,116,540 -246
benchmarks.run_pgo.linux.x64.checked.mch 61,526,409 +59,087
benchmarks.run_tiered.linux.x64.checked.mch 20,952,201 -378
coreclr_tests.run.linux.x64.checked.mch 379,303,315 +175,629
libraries.crossgen2.linux.x64.checked.mch 38,724,198 -36,690
libraries.pmi.linux.x64.checked.mch 44,166,644 -10,472
libraries_tests.run.linux.x64.Release.mch 288,126,805 +54,855
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 104,936,794 -7,284
realworld.run.linux.x64.checked.mch 9,185,961 -2,304
smoke_tests.nativeaot.linux.x64.checked.mch 3,746,367 -585
FullOpts (+231,612 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 8,817,237 -246
benchmarks.run_pgo.linux.x64.checked.mch 37,726,420 +59,087
benchmarks.run_tiered.linux.x64.checked.mch 3,211,421 -378
coreclr_tests.run.linux.x64.checked.mch 99,548,613 +175,629
libraries.crossgen2.linux.x64.checked.mch 38,723,000 -36,690
libraries.pmi.linux.x64.checked.mch 44,053,787 -10,472
libraries_tests.run.linux.x64.Release.mch 104,367,112 +54,855
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 94,319,026 -7,284
realworld.run.linux.x64.checked.mch 8,800,077 -2,304
smoke_tests.nativeaot.linux.x64.checked.mch 3,745,418 -585

Assembly diffs for osx/arm64 ran on windows/x64

Diffs are based on 2,155,041 contexts (932,669 MinOpts, 1,222,372 FullOpts).

MISSED contexts: base: 2 (0.00%), diff: 115,829 (5.10%)

Overall (+139,100 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,856 -564
benchmarks.run_pgo.osx.arm64.checked.mch 31,779,432 +17,248
benchmarks.run_tiered.osx.arm64.checked.mch 15,054,540 -304
coreclr_tests.run.osx.arm64.checked.mch 456,025,968 +174,876
libraries.crossgen2.osx.arm64.checked.mch 55,720,964 -38,600
libraries.pmi.osx.arm64.checked.mch 60,103,176 -17,584
libraries_tests.run.osx.arm64.Release.mch 287,581,212 +21,272
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 129,078,576 -13,956
realworld.run.osx.arm64.checked.mch 10,546,316 -3,288
FullOpts (+139,100 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,320 -564
benchmarks.run_pgo.osx.arm64.checked.mch 15,478,132 +17,248
benchmarks.run_tiered.osx.arm64.checked.mch 3,550,056 -304
coreclr_tests.run.osx.arm64.checked.mch 123,413,044 +174,876
libraries.crossgen2.osx.arm64.checked.mch 55,719,336 -38,600
libraries.pmi.osx.arm64.checked.mch 59,982,048 -17,584
libraries_tests.run.osx.arm64.Release.mch 83,865,364 +21,272
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 115,924,848 -13,956
realworld.run.osx.arm64.checked.mch 9,982,360 -3,288

Assembly diffs for windows/arm64 ran on windows/x64

Diffs are based on 2,214,063 contexts (938,449 MinOpts, 1,275,614 FullOpts).

MISSED contexts: base: 9 (0.00%), diff: 127,054 (5.43%)

Overall (+149,500 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.arm64.checked.mch 9,209,620 -672
benchmarks.run_pgo.windows.arm64.checked.mch 36,834,740 +14,692
benchmarks.run_tiered.windows.arm64.checked.mch 14,982,116 -740
coreclr_tests.run.windows.arm64.checked.mch 464,179,684 +175,696
libraries.crossgen2.windows.arm64.checked.mch 59,064,704 -39,068
libraries.pmi.windows.arm64.checked.mch 59,138,872 -15,932
libraries_tests.run.windows.arm64.Release.mch 290,921,468 +34,164
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch 136,411,844 -14,072
realworld.run.windows.arm64.checked.mch 11,201,768 -4,048
smoke_tests.nativeaot.windows.arm64.checked.mch 3,425,620 -520
FullOpts (+149,500 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.arm64.checked.mch 9,209,084 -672
benchmarks.run_pgo.windows.arm64.checked.mch 20,823,344 +14,692
benchmarks.run_tiered.windows.arm64.checked.mch 3,804,928 -740
coreclr_tests.run.windows.arm64.checked.mch 125,490,580 +175,696
libraries.crossgen2.windows.arm64.checked.mch 59,063,068 -39,068
libraries.pmi.windows.arm64.checked.mch 59,018,888 -15,932
libraries_tests.run.windows.arm64.Release.mch 87,487,872 +34,164
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch 123,258,096 -14,072
realworld.run.windows.arm64.checked.mch 10,637,788 -4,048
smoke_tests.nativeaot.windows.arm64.checked.mch 3,424,608 -520

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,378,858 contexts (997,391 MinOpts, 1,381,467 FullOpts).

MISSED contexts: base: 3 (0.00%), diff: 133,354 (5.31%)

Overall (+176,602 bytes)
Collection Base size (bytes) Diff size (bytes)
aspnet.run.windows.x64.checked.mch 40,266,003 +7,362
benchmarks.run.windows.x64.checked.mch 7,349,829 -153
benchmarks.run_pgo.windows.x64.checked.mch 31,202,379 +17,870
benchmarks.run_tiered.windows.x64.checked.mch 12,005,303 -406
coreclr_tests.run.windows.x64.checked.mch 369,673,919 +157,226
libraries.crossgen2.windows.x64.checked.mch 39,483,308 -30,733
libraries.pmi.windows.x64.checked.mch 45,446,626 -10,727
libraries_tests.run.windows.x64.Release.mch 246,556,596 +45,646
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 108,545,965 -6,320
realworld.run.windows.x64.checked.mch 9,896,125 -2,913
smoke_tests.nativeaot.windows.x64.checked.mch 4,471,874 -250
FullOpts (+176,602 bytes)
Collection Base size (bytes) Diff size (bytes)
aspnet.run.windows.x64.checked.mch 21,774,954 +7,362
benchmarks.run.windows.x64.checked.mch 7,349,466 -153
benchmarks.run_pgo.windows.x64.checked.mch 17,031,723 +17,870
benchmarks.run_tiered.windows.x64.checked.mch 2,906,064 -406
coreclr_tests.run.windows.x64.checked.mch 96,885,065 +157,226
libraries.crossgen2.windows.x64.checked.mch 39,482,121 -30,733
libraries.pmi.windows.x64.checked.mch 45,333,105 -10,727
libraries_tests.run.windows.x64.Release.mch 70,698,278 +45,646
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 97,926,859 -6,320
realworld.run.windows.x64.checked.mch 9,509,516 -2,913
smoke_tests.nativeaot.windows.x64.checked.mch 4,470,927 -250

Details here


Assembly diffs for linux/arm ran on windows/x86

Diffs are based on 2,094,036 contexts (829,328 MinOpts, 1,264,708 FullOpts).

MISSED contexts: base: 71,274 (3.08%), diff: 216,627 (9.38%)

Overall (+130,132 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm.checked.mch 9,047,232 -78
benchmarks.run_pgo.linux.arm.checked.mch 43,272,620 -25,310
benchmarks.run_tiered.linux.arm.checked.mch 14,457,706 -592
coreclr_tests.run.linux.arm.checked.mch 298,167,662 +144,280
libraries.crossgen2.linux.arm.checked.mch 34,520,558 -16,194
libraries.pmi.linux.arm.checked.mch 36,667,164 -9,228
libraries_tests.run.linux.arm.Release.mch 209,834,398 +45,534
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch 76,532,706 -5,962
realworld.run.linux.arm.checked.mch 10,176,194 -2,318
FullOpts (+130,132 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm.checked.mch 8,658,030 -78
benchmarks.run_pgo.linux.arm.checked.mch 32,072,654 -25,310
benchmarks.run_tiered.linux.arm.checked.mch 5,804,706 -592
coreclr_tests.run.linux.arm.checked.mch 85,690,074 +144,280
libraries.crossgen2.linux.arm.checked.mch 34,519,328 -16,194
libraries.pmi.linux.arm.checked.mch 36,560,940 -9,228
libraries_tests.run.linux.arm.Release.mch 88,865,266 +45,534
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch 66,461,970 -5,962
realworld.run.linux.arm.checked.mch 9,740,894 -2,318

Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,163,608 contexts (839,658 MinOpts, 1,323,950 FullOpts).

MISSED contexts: base: 45 (0.00%), diff: 129,888 (5.66%)

Overall (+33,421 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 5,993,081 -607
benchmarks.run_pgo.windows.x86.checked.mch 28,024,486 -12,090
benchmarks.run_tiered.windows.x86.checked.mch 8,552,866 -505
coreclr_tests.run.windows.x86.checked.mch 291,257,106 +67,284
libraries.crossgen2.windows.x86.checked.mch 31,700,815 -29,760
libraries.pmi.windows.x86.checked.mch 36,478,439 -8,621
libraries_tests.run.windows.x86.Release.mch 159,641,653 +28,589
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 89,509,872 -8,447
realworld.run.windows.x86.checked.mch 7,942,301 -2,422
FullOpts (+33,421 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 5,992,800 -607
benchmarks.run_pgo.windows.x86.checked.mch 21,435,855 -12,090
benchmarks.run_tiered.windows.x86.checked.mch 4,283,045 -505
coreclr_tests.run.windows.x86.checked.mch 89,468,972 +67,284
libraries.crossgen2.windows.x86.checked.mch 31,699,755 -29,760
libraries.pmi.windows.x86.checked.mch 36,383,206 -8,621
libraries_tests.run.windows.x86.Release.mch 61,367,953 +28,589
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 80,829,808 -8,447
realworld.run.windows.x86.checked.mch 7,646,587 -2,422

Details here


Throughput diffs

Throughput diffs for linux/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.51% to -0.02%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.51%
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
coreclr_tests.run.linux.arm64.checked.mch -0.04%
libraries.crossgen2.linux.arm64.checked.mch -0.16%
libraries.pmi.linux.arm64.checked.mch -0.08%
libraries_tests.run.linux.arm64.Release.mch -0.11%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.07%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.10%
FullOpts (-0.60% to -0.05%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.60%
benchmarks.run_tiered.linux.arm64.checked.mch -0.05%
coreclr_tests.run.linux.arm64.checked.mch -0.08%
libraries.crossgen2.linux.arm64.checked.mch -0.16%
libraries.pmi.linux.arm64.checked.mch -0.08%
libraries_tests.run.linux.arm64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.07%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.10%

Throughput diffs for linux/x64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.54% to -0.02%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
benchmarks.run_tiered.linux.x64.checked.mch -0.02%
coreclr_tests.run.linux.x64.checked.mch -0.06%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
FullOpts (-0.63% to -0.04%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.63%
benchmarks.run_tiered.linux.x64.checked.mch -0.04%
coreclr_tests.run.linux.x64.checked.mch -0.10%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.20%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%

Throughput diffs for windows/x64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.16% to -0.02%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.14%
benchmarks.run.windows.x64.checked.mch -0.05%
benchmarks.run_pgo.windows.x64.checked.mch -0.14%
benchmarks.run_tiered.windows.x64.checked.mch -0.02%
coreclr_tests.run.windows.x64.checked.mch -0.05%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.07%
libraries_tests.run.windows.x64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.07%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%
FullOpts (-0.25% to -0.04%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.17%
benchmarks.run.windows.x64.checked.mch -0.05%
benchmarks.run_pgo.windows.x64.checked.mch -0.17%
benchmarks.run_tiered.windows.x64.checked.mch -0.04%
coreclr_tests.run.windows.x64.checked.mch -0.10%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.07%
libraries_tests.run.windows.x64.Release.mch -0.25%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.07%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%

Details here


Throughput diffs for linux/arm64 ran on linux/x64

Overall (-0.50% to -0.02%)
Collection PDIFF
libraries.crossgen2.linux.arm64.checked.mch -0.15%
libraries_tests.run.linux.arm64.Release.mch -0.10%
libraries.pmi.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.50%
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
realworld.run.linux.arm64.checked.mch -0.06%
benchmarks.run.linux.arm64.checked.mch -0.05%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
coreclr_tests.run.linux.arm64.checked.mch -0.03%
FullOpts (-0.59% to -0.04%)
Collection PDIFF
libraries.crossgen2.linux.arm64.checked.mch -0.15%
libraries_tests.run.linux.arm64.Release.mch -0.14%
libraries.pmi.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.59%
benchmarks.run_tiered.linux.arm64.checked.mch -0.04%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
realworld.run.linux.arm64.checked.mch -0.06%
benchmarks.run.linux.arm64.checked.mch -0.05%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
coreclr_tests.run.linux.arm64.checked.mch -0.06%

Throughput diffs for linux/x64 ran on linux/x64

Overall (-0.54% to -0.02%)
Collection PDIFF
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
coreclr_tests.run.linux.x64.checked.mch -0.05%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
benchmarks.run.linux.x64.checked.mch -0.05%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries.crossgen2.linux.x64.checked.mch -0.17%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
libraries_tests.run.linux.x64.Release.mch -0.13%
benchmarks.run_tiered.linux.x64.checked.mch -0.02%
FullOpts (-0.63% to -0.03%)
Collection PDIFF
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
coreclr_tests.run.linux.x64.checked.mch -0.10%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
benchmarks.run.linux.x64.checked.mch -0.05%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries.crossgen2.linux.x64.checked.mch -0.17%
benchmarks.run_pgo.linux.x64.checked.mch -0.63%
libraries_tests.run.linux.x64.Release.mch -0.18%
benchmarks.run_tiered.linux.x64.checked.mch -0.03%

Details here


Throughput diffs for linux/arm ran on windows/x86

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.17% to -0.03%)
Collection PDIFF
benchmarks.run.linux.arm.checked.mch -0.04%
benchmarks.run_pgo.linux.arm.checked.mch -0.17%
benchmarks.run_tiered.linux.arm.checked.mch -0.03%
coreclr_tests.run.linux.arm.checked.mch -0.04%
libraries.crossgen2.linux.arm.checked.mch -0.10%
libraries.pmi.linux.arm.checked.mch -0.07%
libraries_tests.run.linux.arm.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch -0.04%
realworld.run.linux.arm.checked.mch -0.05%
FullOpts (-0.19% to -0.04%)
Collection PDIFF
benchmarks.run.linux.arm.checked.mch -0.04%
benchmarks.run_pgo.linux.arm.checked.mch -0.19%
benchmarks.run_tiered.linux.arm.checked.mch -0.04%
coreclr_tests.run.linux.arm.checked.mch -0.06%
libraries.crossgen2.linux.arm.checked.mch -0.10%
libraries.pmi.linux.arm.checked.mch -0.07%
libraries_tests.run.linux.arm.Release.mch -0.19%
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch -0.04%
realworld.run.linux.arm.checked.mch -0.05%

Throughput diffs for windows/x86 ran on windows/x86

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.29% to -0.04%)
Collection PDIFF
benchmarks.run.windows.x86.checked.mch -0.05%
benchmarks.run_pgo.windows.x86.checked.mch -0.29%
benchmarks.run_tiered.windows.x86.checked.mch -0.04%
coreclr_tests.run.windows.x86.checked.mch -0.08%
libraries.crossgen2.windows.x86.checked.mch -0.16%
libraries.pmi.windows.x86.checked.mch -0.07%
libraries_tests.run.windows.x86.Release.mch -0.13%
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch -0.04%
realworld.run.windows.x86.checked.mch -0.07%
FullOpts (-0.31% to -0.04%)
Collection PDIFF
benchmarks.run.windows.x86.checked.mch -0.05%
benchmarks.run_pgo.windows.x86.checked.mch -0.31%
benchmarks.run_tiered.windows.x86.checked.mch -0.04%
coreclr_tests.run.windows.x86.checked.mch -0.12%
libraries.crossgen2.windows.x86.checked.mch -0.16%
libraries.pmi.windows.x86.checked.mch -0.07%
libraries_tests.run.windows.x86.Release.mch -0.18%
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch -0.04%
realworld.run.windows.x86.checked.mch -0.07%

Details here


@ryujit-bot
Copy link

Diff results for #97773

Assembly diffs

Assembly diffs for osx/arm64 ran on linux/x64

Diffs are based on 2,158,070 contexts (932,669 MinOpts, 1,225,401 FullOpts).

MISSED contexts: base: 2 (0.00%), diff: 112,800 (4.97%)

Overall (+140,724 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,856 -564
benchmarks.run_pgo.osx.arm64.checked.mch 32,120,784 +17,264
benchmarks.run_tiered.osx.arm64.checked.mch 15,054,540 -304
coreclr_tests.run.osx.arm64.checked.mch 456,513,504 +174,848
libraries.crossgen2.osx.arm64.checked.mch 55,720,964 -38,600
libraries.pmi.osx.arm64.checked.mch 60,103,176 -17,584
libraries_tests.run.osx.arm64.Release.mch 289,883,304 +22,908
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 129,078,576 -13,956
realworld.run.osx.arm64.checked.mch 10,546,316 -3,288
FullOpts (+140,724 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,320 -564
benchmarks.run_pgo.osx.arm64.checked.mch 15,819,484 +17,264
benchmarks.run_tiered.osx.arm64.checked.mch 3,550,056 -304
coreclr_tests.run.osx.arm64.checked.mch 123,900,580 +174,848
libraries.crossgen2.osx.arm64.checked.mch 55,719,336 -38,600
libraries.pmi.osx.arm64.checked.mch 59,982,048 -17,584
libraries_tests.run.osx.arm64.Release.mch 86,167,456 +22,908
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 115,924,848 -13,956
realworld.run.osx.arm64.checked.mch 9,982,360 -3,288

Details here


Throughput diffs

Throughput diffs for linux/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.50% to -0.02%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.50%
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
coreclr_tests.run.linux.arm64.checked.mch -0.04%
libraries.crossgen2.linux.arm64.checked.mch -0.16%
libraries.pmi.linux.arm64.checked.mch -0.08%
libraries_tests.run.linux.arm64.Release.mch -0.12%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.07%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.10%
FullOpts (-0.60% to -0.05%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.60%
benchmarks.run_tiered.linux.arm64.checked.mch -0.05%
coreclr_tests.run.linux.arm64.checked.mch -0.08%
libraries.crossgen2.linux.arm64.checked.mch -0.16%
libraries.pmi.linux.arm64.checked.mch -0.08%
libraries_tests.run.linux.arm64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.07%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.10%

Throughput diffs for linux/x64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.54% to -0.02%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
benchmarks.run_tiered.linux.x64.checked.mch -0.02%
coreclr_tests.run.linux.x64.checked.mch -0.06%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.15%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
FullOpts (-0.62% to -0.04%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.62%
benchmarks.run_tiered.linux.x64.checked.mch -0.04%
coreclr_tests.run.linux.x64.checked.mch -0.10%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.20%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%

Throughput diffs for osx/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.16% to -0.02%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.06%
benchmarks.run_pgo.osx.arm64.checked.mch -0.13%
benchmarks.run_tiered.osx.arm64.checked.mch -0.02%
coreclr_tests.run.osx.arm64.checked.mch -0.04%
libraries.crossgen2.osx.arm64.checked.mch -0.16%
libraries.pmi.osx.arm64.checked.mch -0.08%
libraries_tests.run.osx.arm64.Release.mch -0.09%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.05%
realworld.run.osx.arm64.checked.mch -0.07%
FullOpts (-0.16% to -0.04%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.06%
benchmarks.run_pgo.osx.arm64.checked.mch -0.16%
benchmarks.run_tiered.osx.arm64.checked.mch -0.04%
coreclr_tests.run.osx.arm64.checked.mch -0.08%
libraries.crossgen2.osx.arm64.checked.mch -0.16%
libraries.pmi.osx.arm64.checked.mch -0.08%
libraries_tests.run.osx.arm64.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.05%
realworld.run.osx.arm64.checked.mch -0.07%

Throughput diffs for windows/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.44% to -0.03%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.06%
benchmarks.run_pgo.windows.arm64.checked.mch -0.44%
benchmarks.run_tiered.windows.arm64.checked.mch -0.03%
coreclr_tests.run.windows.arm64.checked.mch -0.05%
libraries.crossgen2.windows.arm64.checked.mch -0.15%
libraries.pmi.windows.arm64.checked.mch -0.08%
libraries_tests.run.windows.arm64.Release.mch -0.10%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.05%
realworld.run.windows.arm64.checked.mch -0.07%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.09%
MinOpts (-0.00% to +0.01%)
Collection PDIFF
libraries.pmi.windows.arm64.checked.mch +0.01%
FullOpts (-0.53% to -0.05%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.06%
benchmarks.run_pgo.windows.arm64.checked.mch -0.53%
benchmarks.run_tiered.windows.arm64.checked.mch -0.06%
coreclr_tests.run.windows.arm64.checked.mch -0.08%
libraries.crossgen2.windows.arm64.checked.mch -0.15%
libraries.pmi.windows.arm64.checked.mch -0.08%
libraries_tests.run.windows.arm64.Release.mch -0.15%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.05%
realworld.run.windows.arm64.checked.mch -0.08%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.09%

Throughput diffs for windows/x64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.16% to -0.02%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.14%
benchmarks.run.windows.x64.checked.mch -0.05%
benchmarks.run_pgo.windows.x64.checked.mch -0.14%
benchmarks.run_tiered.windows.x64.checked.mch -0.02%
coreclr_tests.run.windows.x64.checked.mch -0.05%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.07%
libraries_tests.run.windows.x64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.07%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%
FullOpts (-0.25% to -0.04%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.17%
benchmarks.run.windows.x64.checked.mch -0.05%
benchmarks.run_pgo.windows.x64.checked.mch -0.17%
benchmarks.run_tiered.windows.x64.checked.mch -0.04%
coreclr_tests.run.windows.x64.checked.mch -0.10%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.07%
libraries_tests.run.windows.x64.Release.mch -0.25%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.07%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%

Details here


@ryujit-bot
Copy link

Diff results for #97773

Assembly diffs

Assembly diffs for linux/arm64 ran on windows/x64

Diffs are based on 2,372,445 contexts (1,007,092 MinOpts, 1,365,353 FullOpts).

MISSED contexts: base: 1 (0.00%), diff: 134,873 (5.38%)

Overall (+181,556 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm64.checked.mch 10,779,100 -652
benchmarks.run_pgo.linux.arm64.checked.mch 67,479,236 +29,124
benchmarks.run_tiered.linux.arm64.checked.mch 23,940,084 -716
coreclr_tests.run.linux.arm64.checked.mch 477,521,512 +180,816
libraries.crossgen2.linux.arm64.checked.mch 55,839,492 -38,600
libraries.pmi.linux.arm64.checked.mch 56,495,516 -14,968
libraries_tests.run.linux.arm64.Release.mch 344,674,912 +44,568
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch 131,109,528 -14,148
realworld.run.linux.arm64.checked.mch 11,150,480 -3,396
smoke_tests.nativeaot.linux.arm64.checked.mch 2,568,016 -472
FullOpts (+181,556 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm64.checked.mch 10,474,172 -652
benchmarks.run_pgo.linux.arm64.checked.mch 41,544,452 +29,124
benchmarks.run_tiered.linux.arm64.checked.mch 4,201,648 -716
coreclr_tests.run.linux.arm64.checked.mch 129,373,360 +180,816
libraries.crossgen2.linux.arm64.checked.mch 55,837,856 -38,600
libraries.pmi.linux.arm64.checked.mch 56,375,532 -14,968
libraries_tests.run.linux.arm64.Release.mch 129,542,960 +44,568
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch 117,612,064 -14,148
realworld.run.linux.arm64.checked.mch 10,569,556 -3,396
smoke_tests.nativeaot.linux.arm64.checked.mch 2,567,028 -472

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,380,890 contexts (991,070 MinOpts, 1,389,820 FullOpts).

MISSED contexts: base: 1 (0.00%), diff: 137,019 (5.44%)

Overall (+232,427 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 9,116,540 -246
benchmarks.run_pgo.linux.x64.checked.mch 61,726,152 +59,103
benchmarks.run_tiered.linux.x64.checked.mch 20,952,201 -378
coreclr_tests.run.linux.x64.checked.mch 379,808,339 +175,777
libraries.crossgen2.linux.x64.checked.mch 38,724,198 -36,690
libraries.pmi.linux.x64.checked.mch 44,166,644 -10,472
libraries_tests.run.linux.x64.Release.mch 291,294,846 +55,506
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 104,936,794 -7,284
realworld.run.linux.x64.checked.mch 9,185,961 -2,304
smoke_tests.nativeaot.linux.x64.checked.mch 3,746,367 -585
FullOpts (+232,427 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 8,817,237 -246
benchmarks.run_pgo.linux.x64.checked.mch 37,926,163 +59,103
benchmarks.run_tiered.linux.x64.checked.mch 3,211,421 -378
coreclr_tests.run.linux.x64.checked.mch 100,053,637 +175,777
libraries.crossgen2.linux.x64.checked.mch 38,723,000 -36,690
libraries.pmi.linux.x64.checked.mch 44,053,787 -10,472
libraries_tests.run.linux.x64.Release.mch 107,535,153 +55,506
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 94,319,026 -7,284
realworld.run.linux.x64.checked.mch 8,800,077 -2,304
smoke_tests.nativeaot.linux.x64.checked.mch 3,745,418 -585

Assembly diffs for osx/arm64 ran on windows/x64

Diffs are based on 2,158,070 contexts (932,669 MinOpts, 1,225,401 FullOpts).

MISSED contexts: base: 2 (0.00%), diff: 112,800 (4.97%)

Overall (+140,724 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,856 -564
benchmarks.run_pgo.osx.arm64.checked.mch 32,120,784 +17,264
benchmarks.run_tiered.osx.arm64.checked.mch 15,054,540 -304
coreclr_tests.run.osx.arm64.checked.mch 456,513,504 +174,848
libraries.crossgen2.osx.arm64.checked.mch 55,720,964 -38,600
libraries.pmi.osx.arm64.checked.mch 60,103,176 -17,584
libraries_tests.run.osx.arm64.Release.mch 289,883,304 +22,908
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 129,078,576 -13,956
realworld.run.osx.arm64.checked.mch 10,546,316 -3,288
FullOpts (+140,724 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,320 -564
benchmarks.run_pgo.osx.arm64.checked.mch 15,819,484 +17,264
benchmarks.run_tiered.osx.arm64.checked.mch 3,550,056 -304
coreclr_tests.run.osx.arm64.checked.mch 123,900,580 +174,848
libraries.crossgen2.osx.arm64.checked.mch 55,719,336 -38,600
libraries.pmi.osx.arm64.checked.mch 59,982,048 -17,584
libraries_tests.run.osx.arm64.Release.mch 86,167,456 +22,908
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 115,924,848 -13,956
realworld.run.osx.arm64.checked.mch 9,982,360 -3,288

Assembly diffs for windows/arm64 ran on windows/x64

Diffs are based on 2,217,453 contexts (938,449 MinOpts, 1,279,004 FullOpts).

MISSED contexts: base: 9 (0.00%), diff: 123,664 (5.28%)

Overall (+151,496 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.arm64.checked.mch 9,209,620 -672
benchmarks.run_pgo.windows.arm64.checked.mch 37,005,516 +14,708
benchmarks.run_tiered.windows.arm64.checked.mch 14,982,116 -740
coreclr_tests.run.windows.arm64.checked.mch 464,776,624 +175,952
libraries.crossgen2.windows.arm64.checked.mch 59,064,704 -39,068
libraries.pmi.windows.arm64.checked.mch 59,138,872 -15,932
libraries_tests.run.windows.arm64.Release.mch 293,361,776 +35,888
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch 136,411,844 -14,072
realworld.run.windows.arm64.checked.mch 11,201,768 -4,048
smoke_tests.nativeaot.windows.arm64.checked.mch 3,425,620 -520
FullOpts (+151,496 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.arm64.checked.mch 9,209,084 -672
benchmarks.run_pgo.windows.arm64.checked.mch 20,994,120 +14,708
benchmarks.run_tiered.windows.arm64.checked.mch 3,804,928 -740
coreclr_tests.run.windows.arm64.checked.mch 126,087,520 +175,952
libraries.crossgen2.windows.arm64.checked.mch 59,063,068 -39,068
libraries.pmi.windows.arm64.checked.mch 59,018,888 -15,932
libraries_tests.run.windows.arm64.Release.mch 89,928,180 +35,888
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch 123,258,096 -14,072
realworld.run.windows.arm64.checked.mch 10,637,788 -4,048
smoke_tests.nativeaot.windows.arm64.checked.mch 3,424,608 -520

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,383,357 contexts (997,391 MinOpts, 1,385,966 FullOpts).

MISSED contexts: base: 3 (0.00%), diff: 128,855 (5.13%)

Overall (+177,162 bytes)
Collection Base size (bytes) Diff size (bytes)
aspnet.run.windows.x64.checked.mch 40,996,720 +7,704
benchmarks.run.windows.x64.checked.mch 7,349,829 -153
benchmarks.run_pgo.windows.x64.checked.mch 31,396,575 +17,885
benchmarks.run_tiered.windows.x64.checked.mch 12,005,303 -406
coreclr_tests.run.windows.x64.checked.mch 370,144,053 +157,298
libraries.crossgen2.windows.x64.checked.mch 39,483,308 -30,733
libraries.pmi.windows.x64.checked.mch 45,446,626 -10,727
libraries_tests.run.windows.x64.Release.mch 248,787,145 +45,777
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 108,545,965 -6,320
realworld.run.windows.x64.checked.mch 9,896,125 -2,913
smoke_tests.nativeaot.windows.x64.checked.mch 4,471,874 -250
FullOpts (+177,162 bytes)
Collection Base size (bytes) Diff size (bytes)
aspnet.run.windows.x64.checked.mch 22,505,671 +7,704
benchmarks.run.windows.x64.checked.mch 7,349,466 -153
benchmarks.run_pgo.windows.x64.checked.mch 17,225,919 +17,885
benchmarks.run_tiered.windows.x64.checked.mch 2,906,064 -406
coreclr_tests.run.windows.x64.checked.mch 97,355,199 +157,298
libraries.crossgen2.windows.x64.checked.mch 39,482,121 -30,733
libraries.pmi.windows.x64.checked.mch 45,333,105 -10,727
libraries_tests.run.windows.x64.Release.mch 72,928,827 +45,777
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 97,926,859 -6,320
realworld.run.windows.x64.checked.mch 9,509,516 -2,913
smoke_tests.nativeaot.windows.x64.checked.mch 4,470,927 -250

Details here


Assembly diffs for linux/arm ran on windows/x86

Diffs are based on 2,100,809 contexts (829,328 MinOpts, 1,271,481 FullOpts).

MISSED contexts: base: 71,274 (3.08%), diff: 209,854 (9.08%)

Overall (+130,620 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm.checked.mch 9,047,232 -78
benchmarks.run_pgo.linux.arm.checked.mch 44,462,940 -25,578
benchmarks.run_tiered.linux.arm.checked.mch 14,457,706 -592
coreclr_tests.run.linux.arm.checked.mch 298,554,316 +144,326
libraries.crossgen2.linux.arm.checked.mch 34,520,558 -16,194
libraries.pmi.linux.arm.checked.mch 36,667,164 -9,228
libraries_tests.run.linux.arm.Release.mch 211,844,980 +46,244
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch 76,532,706 -5,962
realworld.run.linux.arm.checked.mch 10,176,194 -2,318
FullOpts (+130,620 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm.checked.mch 8,658,030 -78
benchmarks.run_pgo.linux.arm.checked.mch 33,262,974 -25,578
benchmarks.run_tiered.linux.arm.checked.mch 5,804,706 -592
coreclr_tests.run.linux.arm.checked.mch 86,076,728 +144,326
libraries.crossgen2.linux.arm.checked.mch 34,519,328 -16,194
libraries.pmi.linux.arm.checked.mch 36,560,940 -9,228
libraries_tests.run.linux.arm.Release.mch 90,875,848 +46,244
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch 66,461,970 -5,962
realworld.run.linux.arm.checked.mch 9,740,894 -2,318

Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,168,453 contexts (839,658 MinOpts, 1,328,795 FullOpts).

MISSED contexts: base: 45 (0.00%), diff: 125,043 (5.45%)

Overall (+32,962 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 5,993,081 -607
benchmarks.run_pgo.windows.x86.checked.mch 28,623,124 -12,075
benchmarks.run_tiered.windows.x86.checked.mch 8,552,866 -505
coreclr_tests.run.windows.x86.checked.mch 291,617,193 +67,598
libraries.crossgen2.windows.x86.checked.mch 31,700,815 -29,760
libraries.pmi.windows.x86.checked.mch 36,478,439 -8,621
libraries_tests.run.windows.x86.Release.mch 160,677,288 +27,801
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 89,509,872 -8,447
realworld.run.windows.x86.checked.mch 7,942,301 -2,422
FullOpts (+32,962 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 5,992,800 -607
benchmarks.run_pgo.windows.x86.checked.mch 22,034,493 -12,075
benchmarks.run_tiered.windows.x86.checked.mch 4,283,045 -505
coreclr_tests.run.windows.x86.checked.mch 89,829,059 +67,598
libraries.crossgen2.windows.x86.checked.mch 31,699,755 -29,760
libraries.pmi.windows.x86.checked.mch 36,383,206 -8,621
libraries_tests.run.windows.x86.Release.mch 62,403,588 +27,801
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 80,829,808 -8,447
realworld.run.windows.x86.checked.mch 7,646,587 -2,422

Details here


Throughput diffs

Throughput diffs for linux/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.50% to -0.02%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.50%
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
coreclr_tests.run.linux.arm64.checked.mch -0.04%
libraries.crossgen2.linux.arm64.checked.mch -0.16%
libraries.pmi.linux.arm64.checked.mch -0.08%
libraries_tests.run.linux.arm64.Release.mch -0.12%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.07%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.10%
FullOpts (-0.60% to -0.05%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.60%
benchmarks.run_tiered.linux.arm64.checked.mch -0.05%
coreclr_tests.run.linux.arm64.checked.mch -0.08%
libraries.crossgen2.linux.arm64.checked.mch -0.16%
libraries.pmi.linux.arm64.checked.mch -0.08%
libraries_tests.run.linux.arm64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.07%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.10%

Throughput diffs for linux/x64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.54% to -0.02%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
benchmarks.run_tiered.linux.x64.checked.mch -0.02%
coreclr_tests.run.linux.x64.checked.mch -0.06%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.15%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
FullOpts (-0.62% to -0.04%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.62%
benchmarks.run_tiered.linux.x64.checked.mch -0.04%
coreclr_tests.run.linux.x64.checked.mch -0.10%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.20%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%

Throughput diffs for osx/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.16% to -0.02%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.06%
benchmarks.run_pgo.osx.arm64.checked.mch -0.13%
benchmarks.run_tiered.osx.arm64.checked.mch -0.02%
coreclr_tests.run.osx.arm64.checked.mch -0.04%
libraries.crossgen2.osx.arm64.checked.mch -0.16%
libraries.pmi.osx.arm64.checked.mch -0.08%
libraries_tests.run.osx.arm64.Release.mch -0.09%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.05%
realworld.run.osx.arm64.checked.mch -0.07%
FullOpts (-0.16% to -0.04%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.06%
benchmarks.run_pgo.osx.arm64.checked.mch -0.16%
benchmarks.run_tiered.osx.arm64.checked.mch -0.04%
coreclr_tests.run.osx.arm64.checked.mch -0.08%
libraries.crossgen2.osx.arm64.checked.mch -0.16%
libraries.pmi.osx.arm64.checked.mch -0.08%
libraries_tests.run.osx.arm64.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.05%
realworld.run.osx.arm64.checked.mch -0.07%

Throughput diffs for windows/arm64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.44% to -0.03%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.06%
benchmarks.run_pgo.windows.arm64.checked.mch -0.44%
benchmarks.run_tiered.windows.arm64.checked.mch -0.03%
coreclr_tests.run.windows.arm64.checked.mch -0.05%
libraries.crossgen2.windows.arm64.checked.mch -0.15%
libraries.pmi.windows.arm64.checked.mch -0.08%
libraries_tests.run.windows.arm64.Release.mch -0.10%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.05%
realworld.run.windows.arm64.checked.mch -0.07%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.09%
MinOpts (-0.00% to +0.01%)
Collection PDIFF
libraries.pmi.windows.arm64.checked.mch +0.01%
FullOpts (-0.53% to -0.05%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.06%
benchmarks.run_pgo.windows.arm64.checked.mch -0.53%
benchmarks.run_tiered.windows.arm64.checked.mch -0.06%
coreclr_tests.run.windows.arm64.checked.mch -0.08%
libraries.crossgen2.windows.arm64.checked.mch -0.15%
libraries.pmi.windows.arm64.checked.mch -0.08%
libraries_tests.run.windows.arm64.Release.mch -0.15%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.05%
realworld.run.windows.arm64.checked.mch -0.08%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.09%

Throughput diffs for windows/x64 ran on windows/x64

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.16% to -0.02%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.14%
benchmarks.run.windows.x64.checked.mch -0.05%
benchmarks.run_pgo.windows.x64.checked.mch -0.14%
benchmarks.run_tiered.windows.x64.checked.mch -0.02%
coreclr_tests.run.windows.x64.checked.mch -0.05%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.07%
libraries_tests.run.windows.x64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.07%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%
FullOpts (-0.25% to -0.04%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.17%
benchmarks.run.windows.x64.checked.mch -0.05%
benchmarks.run_pgo.windows.x64.checked.mch -0.17%
benchmarks.run_tiered.windows.x64.checked.mch -0.04%
coreclr_tests.run.windows.x64.checked.mch -0.10%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.07%
libraries_tests.run.windows.x64.Release.mch -0.25%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.07%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%

Details here


Throughput diffs for linux/arm64 ran on linux/x64

Overall (-0.50% to -0.02%)
Collection PDIFF
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
libraries_tests.run.linux.arm64.Release.mch -0.10%
libraries.pmi.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.50%
libraries.crossgen2.linux.arm64.checked.mch -0.15%
benchmarks.run.linux.arm64.checked.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.06%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
coreclr_tests.run.linux.arm64.checked.mch -0.03%
FullOpts (-0.58% to -0.04%)
Collection PDIFF
benchmarks.run_tiered.linux.arm64.checked.mch -0.04%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
libraries_tests.run.linux.arm64.Release.mch -0.14%
libraries.pmi.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.58%
libraries.crossgen2.linux.arm64.checked.mch -0.15%
benchmarks.run.linux.arm64.checked.mch -0.05%
realworld.run.linux.arm64.checked.mch -0.06%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
coreclr_tests.run.linux.arm64.checked.mch -0.06%

Throughput diffs for linux/x64 ran on linux/x64

Overall (-0.54% to -0.02%)
Collection PDIFF
realworld.run.linux.x64.checked.mch -0.06%
libraries_tests.run.linux.x64.Release.mch -0.13%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
libraries.pmi.linux.x64.checked.mch -0.08%
benchmarks.run_tiered.linux.x64.checked.mch -0.02%
benchmarks.run.linux.x64.checked.mch -0.05%
coreclr_tests.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
FullOpts (-0.62% to -0.03%)
Collection PDIFF
realworld.run.linux.x64.checked.mch -0.06%
libraries_tests.run.linux.x64.Release.mch -0.19%
benchmarks.run_pgo.linux.x64.checked.mch -0.62%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
libraries.pmi.linux.x64.checked.mch -0.08%
benchmarks.run_tiered.linux.x64.checked.mch -0.03%
benchmarks.run.linux.x64.checked.mch -0.05%
coreclr_tests.run.linux.x64.checked.mch -0.11%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%

Details here


Throughput diffs for linux/arm ran on windows/x86

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.17% to -0.02%)
Collection PDIFF
benchmarks.run.linux.arm.checked.mch -0.04%
benchmarks.run_pgo.linux.arm.checked.mch -0.17%
benchmarks.run_tiered.linux.arm.checked.mch -0.02%
coreclr_tests.run.linux.arm.checked.mch -0.04%
libraries.crossgen2.linux.arm.checked.mch -0.10%
libraries.pmi.linux.arm.checked.mch -0.07%
libraries_tests.run.linux.arm.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch -0.04%
realworld.run.linux.arm.checked.mch -0.05%
FullOpts (-0.19% to -0.03%)
Collection PDIFF
benchmarks.run.linux.arm.checked.mch -0.04%
benchmarks.run_pgo.linux.arm.checked.mch -0.19%
benchmarks.run_tiered.linux.arm.checked.mch -0.03%
coreclr_tests.run.linux.arm.checked.mch -0.07%
libraries.crossgen2.linux.arm.checked.mch -0.10%
libraries.pmi.linux.arm.checked.mch -0.07%
libraries_tests.run.linux.arm.Release.mch -0.19%
libraries_tests_no_tiered_compilation.run.linux.arm.Release.mch -0.05%
realworld.run.linux.arm.checked.mch -0.05%

Throughput diffs for windows/x86 ran on windows/x86

Warning: Different compilers used for base and diff JITs. Results may be misleading.
Base JIT's compiler: MSVC 193933218
Diff JIT's compiler: MSVC 193933321

Overall (-0.29% to -0.04%)
Collection PDIFF
benchmarks.run.windows.x86.checked.mch -0.05%
benchmarks.run_pgo.windows.x86.checked.mch -0.29%
benchmarks.run_tiered.windows.x86.checked.mch -0.04%
coreclr_tests.run.windows.x86.checked.mch -0.08%
libraries.crossgen2.windows.x86.checked.mch -0.16%
libraries.pmi.windows.x86.checked.mch -0.07%
libraries_tests.run.windows.x86.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch -0.04%
realworld.run.windows.x86.checked.mch -0.07%
FullOpts (-0.31% to -0.04%)
Collection PDIFF
benchmarks.run.windows.x86.checked.mch -0.05%
benchmarks.run_pgo.windows.x86.checked.mch -0.31%
benchmarks.run_tiered.windows.x86.checked.mch -0.04%
coreclr_tests.run.windows.x86.checked.mch -0.12%
libraries.crossgen2.windows.x86.checked.mch -0.16%
libraries.pmi.windows.x86.checked.mch -0.07%
libraries_tests.run.windows.x86.Release.mch -0.19%
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch -0.04%
realworld.run.windows.x86.checked.mch -0.07%

Details here


@ryujit-bot
Copy link

Diff results for #97773

Assembly diffs

Assembly diffs for linux/arm64 ran on windows/x64

Diffs are based on 2,374,031 contexts (1,007,092 MinOpts, 1,366,939 FullOpts).

MISSED contexts: base: 1 (0.00%), diff: 133,287 (5.32%)

Overall (+173,396 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm64.checked.mch 10,779,100 -652
benchmarks.run_pgo.linux.arm64.checked.mch 67,515,080 +27,512
benchmarks.run_tiered.linux.arm64.checked.mch 23,940,084 -716
coreclr_tests.run.linux.arm64.checked.mch 477,601,936 +179,988
libraries.crossgen2.linux.arm64.checked.mch 55,839,492 -38,600
libraries.pmi.linux.arm64.checked.mch 56,495,516 -14,968
libraries_tests.run.linux.arm64.Release.mch 345,952,264 +38,848
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch 131,109,528 -14,148
realworld.run.linux.arm64.checked.mch 11,150,480 -3,396
smoke_tests.nativeaot.linux.arm64.checked.mch 2,568,016 -472
FullOpts (+173,396 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.arm64.checked.mch 10,474,172 -652
benchmarks.run_pgo.linux.arm64.checked.mch 41,580,296 +27,512
benchmarks.run_tiered.linux.arm64.checked.mch 4,201,648 -716
coreclr_tests.run.linux.arm64.checked.mch 129,453,784 +179,988
libraries.crossgen2.linux.arm64.checked.mch 55,837,856 -38,600
libraries.pmi.linux.arm64.checked.mch 56,375,532 -14,968
libraries_tests.run.linux.arm64.Release.mch 130,820,312 +38,848
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch 117,612,064 -14,148
realworld.run.linux.arm64.checked.mch 10,569,556 -3,396
smoke_tests.nativeaot.linux.arm64.checked.mch 2,567,028 -472

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,382,582 contexts (991,070 MinOpts, 1,391,512 FullOpts).

MISSED contexts: base: 1 (0.00%), diff: 135,327 (5.37%)

Overall (+219,372 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 9,116,540 -246
benchmarks.run_pgo.linux.x64.checked.mch 61,759,845 +55,484
benchmarks.run_tiered.linux.x64.checked.mch 20,952,201 -378
coreclr_tests.run.linux.x64.checked.mch 379,875,950 +174,414
libraries.crossgen2.linux.x64.checked.mch 38,724,198 -36,690
libraries.pmi.linux.x64.checked.mch 44,166,644 -10,472
libraries_tests.run.linux.x64.Release.mch 292,392,477 +47,433
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 104,936,794 -7,284
realworld.run.linux.x64.checked.mch 9,185,961 -2,304
smoke_tests.nativeaot.linux.x64.checked.mch 3,746,367 -585
FullOpts (+219,372 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 8,817,237 -246
benchmarks.run_pgo.linux.x64.checked.mch 37,959,856 +55,484
benchmarks.run_tiered.linux.x64.checked.mch 3,211,421 -378
coreclr_tests.run.linux.x64.checked.mch 100,121,248 +174,414
libraries.crossgen2.linux.x64.checked.mch 38,723,000 -36,690
libraries.pmi.linux.x64.checked.mch 44,053,787 -10,472
libraries_tests.run.linux.x64.Release.mch 108,632,784 +47,433
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 94,319,026 -7,284
realworld.run.linux.x64.checked.mch 8,800,077 -2,304
smoke_tests.nativeaot.linux.x64.checked.mch 3,745,418 -585

Assembly diffs for osx/arm64 ran on windows/x64

Diffs are based on 2,159,155 contexts (932,669 MinOpts, 1,226,486 FullOpts).

MISSED contexts: base: 2 (0.00%), diff: 111,715 (4.92%)

Overall (+132,884 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,856 -564
benchmarks.run_pgo.osx.arm64.checked.mch 32,165,908 +15,424
benchmarks.run_tiered.osx.arm64.checked.mch 15,054,540 -304
coreclr_tests.run.osx.arm64.checked.mch 456,586,300 +174,144
libraries.crossgen2.osx.arm64.checked.mch 55,720,964 -38,600
libraries.pmi.osx.arm64.checked.mch 60,103,176 -17,584
libraries_tests.run.osx.arm64.Release.mch 290,728,984 +17,612
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 129,078,576 -13,956
realworld.run.osx.arm64.checked.mch 10,546,316 -3,288
FullOpts (+132,884 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 9,448,320 -564
benchmarks.run_pgo.osx.arm64.checked.mch 15,864,608 +15,424
benchmarks.run_tiered.osx.arm64.checked.mch 3,550,056 -304
coreclr_tests.run.osx.arm64.checked.mch 123,973,376 +174,144
libraries.crossgen2.osx.arm64.checked.mch 55,719,336 -38,600
libraries.pmi.osx.arm64.checked.mch 59,982,048 -17,584
libraries_tests.run.osx.arm64.Release.mch 87,013,136 +17,612
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch 115,924,848 -13,956
realworld.run.osx.arm64.checked.mch 9,982,360 -3,288

Assembly diffs for windows/arm64 ran on windows/x64

Diffs are based on 2,218,505 contexts (938,449 MinOpts, 1,280,056 FullOpts).

MISSED contexts: base: 9 (0.00%), diff: 122,612 (5.24%)

Overall (+144,232 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.arm64.checked.mch 9,209,620 -672
benchmarks.run_pgo.windows.arm64.checked.mch 37,042,776 +13,900
benchmarks.run_tiered.windows.arm64.checked.mch 14,982,116 -740
coreclr_tests.run.windows.arm64.checked.mch 464,848,280 +175,144
libraries.crossgen2.windows.arm64.checked.mch 59,064,704 -39,068
libraries.pmi.windows.arm64.checked.mch 59,138,872 -15,932
libraries_tests.run.windows.arm64.Release.mch 294,230,544 +30,240
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch 136,411,844 -14,072
realworld.run.windows.arm64.checked.mch 11,201,768 -4,048
smoke_tests.nativeaot.windows.arm64.checked.mch 3,425,620 -520
FullOpts (+144,232 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.arm64.checked.mch 9,209,084 -672
benchmarks.run_pgo.windows.arm64.checked.mch 21,031,380 +13,900
benchmarks.run_tiered.windows.arm64.checked.mch 3,804,928 -740
coreclr_tests.run.windows.arm64.checked.mch 126,159,176 +175,144
libraries.crossgen2.windows.arm64.checked.mch 59,063,068 -39,068
libraries.pmi.windows.arm64.checked.mch 59,018,888 -15,932
libraries_tests.run.windows.arm64.Release.mch 90,796,948 +30,240
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch 123,258,096 -14,072
realworld.run.windows.arm64.checked.mch 10,637,788 -4,048
smoke_tests.nativeaot.windows.arm64.checked.mch 3,424,608 -520

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,384,796 contexts (997,391 MinOpts, 1,387,405 FullOpts).

MISSED contexts: base: 3 (0.00%), diff: 127,416 (5.07%)

Overall (+160,483 bytes)
Collection Base size (bytes) Diff size (bytes)
aspnet.run.windows.x64.checked.mch 41,148,955 +3,339
benchmarks.run.windows.x64.checked.mch 7,349,829 -153
benchmarks.run_pgo.windows.x64.checked.mch 31,419,594 +14,355
benchmarks.run_tiered.windows.x64.checked.mch 12,005,303 -406
coreclr_tests.run.windows.x64.checked.mch 370,205,685 +155,039
libraries.crossgen2.windows.x64.checked.mch 39,483,308 -30,733
libraries.pmi.windows.x64.checked.mch 45,446,626 -10,727
libraries_tests.run.windows.x64.Release.mch 249,593,901 +39,252
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 108,545,965 -6,320
realworld.run.windows.x64.checked.mch 9,896,125 -2,913
smoke_tests.nativeaot.windows.x64.checked.mch 4,471,874 -250
FullOpts (+160,483 bytes)
Collection Base size (bytes) Diff size (bytes)
aspnet.run.windows.x64.checked.mch 22,657,906 +3,339
benchmarks.run.windows.x64.checked.mch 7,349,466 -153
benchmarks.run_pgo.windows.x64.checked.mch 17,248,938 +14,355
benchmarks.run_tiered.windows.x64.checked.mch 2,906,064 -406
coreclr_tests.run.windows.x64.checked.mch 97,416,831 +155,039
libraries.crossgen2.windows.x64.checked.mch 39,482,121 -30,733
libraries.pmi.windows.x64.checked.mch 45,333,105 -10,727
libraries_tests.run.windows.x64.Release.mch 73,735,583 +39,252
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 97,926,859 -6,320
realworld.run.windows.x64.checked.mch 9,509,516 -2,913
smoke_tests.nativeaot.windows.x64.checked.mch 4,470,927 -250

Details here


Throughput diffs

Throughput diffs for linux/arm64 ran on windows/x64

Overall (-0.49% to -0.02%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.05%
benchmarks.run_pgo.linux.arm64.checked.mch -0.49%
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
coreclr_tests.run.linux.arm64.checked.mch -0.03%
libraries.crossgen2.linux.arm64.checked.mch -0.14%
libraries.pmi.linux.arm64.checked.mch -0.06%
libraries_tests.run.linux.arm64.Release.mch -0.11%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
realworld.run.linux.arm64.checked.mch -0.05%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
MinOpts (-0.00% to +0.01%)
Collection PDIFF
libraries.pmi.linux.arm64.checked.mch +0.01%
FullOpts (-0.58% to -0.03%)
Collection PDIFF
benchmarks.run.linux.arm64.checked.mch -0.05%
benchmarks.run_pgo.linux.arm64.checked.mch -0.58%
benchmarks.run_tiered.linux.arm64.checked.mch -0.03%
coreclr_tests.run.linux.arm64.checked.mch -0.05%
libraries.crossgen2.linux.arm64.checked.mch -0.14%
libraries.pmi.linux.arm64.checked.mch -0.06%
libraries_tests.run.linux.arm64.Release.mch -0.15%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
realworld.run.linux.arm64.checked.mch -0.05%
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%

Throughput diffs for linux/x64 ran on windows/x64

Overall (-0.54% to -0.01%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
benchmarks.run_tiered.linux.x64.checked.mch -0.01%
coreclr_tests.run.linux.x64.checked.mch -0.05%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
FullOpts (-0.62% to -0.03%)
Collection PDIFF
benchmarks.run.linux.x64.checked.mch -0.05%
benchmarks.run_pgo.linux.x64.checked.mch -0.62%
benchmarks.run_tiered.linux.x64.checked.mch -0.03%
coreclr_tests.run.linux.x64.checked.mch -0.10%
libraries.crossgen2.linux.x64.checked.mch -0.17%
libraries.pmi.linux.x64.checked.mch -0.08%
libraries_tests.run.linux.x64.Release.mch -0.20%
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
realworld.run.linux.x64.checked.mch -0.06%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%

Throughput diffs for osx/arm64 ran on windows/x64

Overall (-0.14% to -0.01%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.04%
benchmarks.run_pgo.osx.arm64.checked.mch -0.12%
benchmarks.run_tiered.osx.arm64.checked.mch -0.01%
coreclr_tests.run.osx.arm64.checked.mch -0.03%
libraries.crossgen2.osx.arm64.checked.mch -0.14%
libraries.pmi.osx.arm64.checked.mch -0.06%
libraries_tests.run.osx.arm64.Release.mch -0.08%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.03%
realworld.run.osx.arm64.checked.mch -0.05%
FullOpts (-0.15% to -0.02%)
Collection PDIFF
benchmarks.run.osx.arm64.checked.mch -0.04%
benchmarks.run_pgo.osx.arm64.checked.mch -0.15%
benchmarks.run_tiered.osx.arm64.checked.mch -0.02%
coreclr_tests.run.osx.arm64.checked.mch -0.05%
libraries.crossgen2.osx.arm64.checked.mch -0.14%
libraries.pmi.osx.arm64.checked.mch -0.06%
libraries_tests.run.osx.arm64.Release.mch -0.13%
libraries_tests_no_tiered_compilation.run.osx.arm64.Release.mch -0.04%
realworld.run.osx.arm64.checked.mch -0.05%

Throughput diffs for windows/arm64 ran on windows/x64

Overall (-0.43% to -0.02%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.05%
benchmarks.run_pgo.windows.arm64.checked.mch -0.43%
benchmarks.run_tiered.windows.arm64.checked.mch -0.02%
coreclr_tests.run.windows.arm64.checked.mch -0.03%
libraries.crossgen2.windows.arm64.checked.mch -0.14%
libraries.pmi.windows.arm64.checked.mch -0.06%
libraries_tests.run.windows.arm64.Release.mch -0.09%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.03%
realworld.run.windows.arm64.checked.mch -0.05%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.07%
MinOpts (-0.00% to +0.01%)
Collection PDIFF
libraries.pmi.windows.arm64.checked.mch +0.01%
FullOpts (-0.52% to -0.03%)
Collection PDIFF
benchmarks.run.windows.arm64.checked.mch -0.05%
benchmarks.run_pgo.windows.arm64.checked.mch -0.52%
benchmarks.run_tiered.windows.arm64.checked.mch -0.04%
coreclr_tests.run.windows.arm64.checked.mch -0.06%
libraries.crossgen2.windows.arm64.checked.mch -0.14%
libraries.pmi.windows.arm64.checked.mch -0.06%
libraries_tests.run.windows.arm64.Release.mch -0.14%
libraries_tests_no_tiered_compilation.run.windows.arm64.Release.mch -0.03%
realworld.run.windows.arm64.checked.mch -0.06%
smoke_tests.nativeaot.windows.arm64.checked.mch -0.07%

Throughput diffs for windows/x64 ran on windows/x64

Overall (-0.16% to -0.02%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.14%
benchmarks.run.windows.x64.checked.mch -0.04%
benchmarks.run_pgo.windows.x64.checked.mch -0.14%
benchmarks.run_tiered.windows.x64.checked.mch -0.02%
coreclr_tests.run.windows.x64.checked.mch -0.05%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.06%
libraries_tests.run.windows.x64.Release.mch -0.16%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.06%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%
FullOpts (-0.24% to -0.03%)
Collection PDIFF
aspnet.run.windows.x64.checked.mch -0.17%
benchmarks.run.windows.x64.checked.mch -0.04%
benchmarks.run_pgo.windows.x64.checked.mch -0.16%
benchmarks.run_tiered.windows.x64.checked.mch -0.03%
coreclr_tests.run.windows.x64.checked.mch -0.09%
libraries.crossgen2.windows.x64.checked.mch -0.16%
libraries.pmi.windows.x64.checked.mch -0.06%
libraries_tests.run.windows.x64.Release.mch -0.24%
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch -0.04%
realworld.run.windows.x64.checked.mch -0.06%
smoke_tests.nativeaot.windows.x64.checked.mch -0.06%

Details here


Throughput diffs for linux/arm64 ran on linux/x64

Overall (-0.50% to -0.02%)
Collection PDIFF
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
libraries.pmi.linux.arm64.checked.mch -0.06%
libraries_tests.run.linux.arm64.Release.mch -0.10%
realworld.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.50%
benchmarks.run.linux.arm64.checked.mch -0.05%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
libraries.crossgen2.linux.arm64.checked.mch -0.15%
coreclr_tests.run.linux.arm64.checked.mch -0.03%
benchmarks.run_tiered.linux.arm64.checked.mch -0.02%
FullOpts (-0.58% to -0.04%)
Collection PDIFF
smoke_tests.nativeaot.linux.arm64.checked.mch -0.09%
libraries.pmi.linux.arm64.checked.mch -0.06%
libraries_tests.run.linux.arm64.Release.mch -0.14%
realworld.run.linux.arm64.checked.mch -0.06%
benchmarks.run_pgo.linux.arm64.checked.mch -0.58%
benchmarks.run.linux.arm64.checked.mch -0.05%
libraries_tests_no_tiered_compilation.run.linux.arm64.Release.mch -0.04%
libraries.crossgen2.linux.arm64.checked.mch -0.15%
coreclr_tests.run.linux.arm64.checked.mch -0.06%
benchmarks.run_tiered.linux.arm64.checked.mch -0.04%

Throughput diffs for linux/x64 ran on linux/x64

Overall (-0.54% to -0.02%)
Collection PDIFF
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
libraries_tests.run.linux.x64.Release.mch -0.13%
benchmarks.run_tiered.linux.x64.checked.mch -0.02%
libraries.pmi.linux.x64.checked.mch -0.08%
benchmarks.run.linux.x64.checked.mch -0.05%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
coreclr_tests.run.linux.x64.checked.mch -0.06%
libraries.crossgen2.linux.x64.checked.mch -0.17%
benchmarks.run_pgo.linux.x64.checked.mch -0.54%
realworld.run.linux.x64.checked.mch -0.06%
FullOpts (-0.62% to -0.03%)
Collection PDIFF
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch -0.04%
libraries_tests.run.linux.x64.Release.mch -0.19%
benchmarks.run_tiered.linux.x64.checked.mch -0.03%
libraries.pmi.linux.x64.checked.mch -0.08%
benchmarks.run.linux.x64.checked.mch -0.05%
smoke_tests.nativeaot.linux.x64.checked.mch -0.07%
coreclr_tests.run.linux.x64.checked.mch -0.11%
libraries.crossgen2.linux.x64.checked.mch -0.17%
benchmarks.run_pgo.linux.x64.checked.mch -0.62%
realworld.run.linux.x64.checked.mch -0.06%

Details here


@EgorBo
Copy link
Member Author

EgorBo commented Feb 2, 2024

@jakobbotsch @dotnet/jit-contrib PTAL, no diffs as expected (the phase is not yet enabled fully)

@EgorBo EgorBo requested a review from jakobbotsch February 2, 2024 02:01
Comment on lines +1877 to +1883
static int PickCandidatesForTypeCheck(Compiler* comp,
GenTreeCall* castHelper,
CORINFO_CLASS_HANDLE* candidates,
CORINFO_CLASS_HANDLE* commonCls,
unsigned* likelihoods,
TypeCheckFailedAction* typeCheckFailed,
TypeCheckPassedAction* typeCheckPassed)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's probably warranted to make this return a struct instead of 6 separate return values (also the "Returns" in the function header looks outdated now)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree, will change in a follow up

Copy link
Member

@jakobbotsch jakobbotsch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, feel free to address the feedback in a follow up

@EgorBo EgorBo merged commit 2f59305 into dotnet:main Feb 2, 2024
@EgorBo EgorBo deleted the late-cast-expansion-5 branch February 2, 2024 14:17
@github-actions github-actions bot locked and limited conversation to collaborators Mar 4, 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.

NAOT: isinst with multiple guesses without fallback
3 participants