Open performanceautofiler[bot] opened 6 months ago
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
330.96 ns | 383.42 ns | 1.16 | 0.01 | True | |||
|
23.24 ns | 29.22 ns | 1.26 | 0.03 | True | |||
|
376.84 ns | 917.67 ns | 2.44 | 0.01 | True | |||
|
785.18 ns | 2.20 μs | 2.80 | 0.01 | True | |||
|
5.99 μs | 11.59 μs | 1.94 | 0.00 | True | |||
|
116.06 ns | 147.23 ns | 1.27 | 0.29 | False | |||
|
34.23 ns | 40.50 ns | 1.18 | 0.01 | True | |||
|
176.97 ns | 450.52 ns | 2.55 | 0.01 | True | |||
|
441.11 ns | 522.56 ns | 1.18 | 0.33 | False | |||
|
265.20 ns | 682.20 ns | 2.57 | 0.00 | True | |||
|
22.11 ns | 27.74 ns | 1.25 | 0.06 | True | |||
|
580.28 ns | 657.86 ns | 1.13 | 0.02 | False | |||
|
36.61 ns | 49.44 ns | 1.35 | 0.15 | True | |||
|
2.21 μs | 6.47 μs | 2.92 | 0.01 | True | |||
|
188.55 ns | 214.06 ns | 1.14 | 0.01 | False | |||
|
21.88 ns | 28.03 ns | 1.28 | 0.09 | False | |||
|
84.63 ns | 99.72 ns | 1.18 | 0.06 | False | |||
|
1.46 μs | 4.37 μs | 2.99 | 0.02 | True | |||
|
31.61 ns | 34.67 ns | 1.10 | 0.24 | False | |||
|
11.14 μs | 13.54 μs | 1.22 | 0.09 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.13 ms | 1.24 ms | 1.09 | 0.01 | True | |||
|
505.64 μs | 552.91 μs | 1.09 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
3.15 μs | 3.53 μs | 1.12 | 0.00 | True | |||
|
3.18 μs | 3.46 μs | 1.09 | 0.01 | True | |||
|
3.54 μs | 3.84 μs | 1.09 | 0.01 | False | |||
|
3.56 μs | 3.87 μs | 1.08 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
2.80 μs | 3.11 μs | 1.11 | 0.02 | False | |||
|
2.57 μs | 2.88 μs | 1.12 | 0.00 | True | |||
|
2.51 μs | 2.87 μs | 1.14 | 0.00 | True | |||
|
2.84 μs | 3.09 μs | 1.09 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
849.31 ns | 956.51 ns | 1.13 | 0.01 | False | |||
|
1.07 μs | 1.45 μs | 1.36 | 0.01 | True | |||
|
1.41 μs | 1.82 μs | 1.29 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
2.73 μs | 4.51 μs | 1.65 | 0.01 | False | |||
|
9.54 μs | 12.59 μs | 1.32 | 0.01 | False | |||
|
2.03 μs | 3.58 μs | 1.76 | 0.01 | False | |||
|
8.11 μs | 11.13 μs | 1.37 | 0.01 | False | |||
|
2.54 μs | 4.10 μs | 1.62 | 0.01 | False | |||
|
2.13 μs | 3.65 μs | 1.71 | 0.01 | False | |||
|
2.83 μs | 4.57 μs | 1.61 | 0.01 | False | |||
|
3.30 μs | 5.05 μs | 1.53 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.76 μs | 3.95 μs | 2.24 | 0.00 | True | |||
|
1.25 μs | 1.53 μs | 1.22 | 0.00 | True | |||
|
593.50 ns | 842.89 ns | 1.42 | 0.01 | True | |||
|
1.64 μs | 3.82 μs | 2.33 | 0.00 | True | |||
|
92.52 ns | 230.92 ns | 2.50 | 0.02 | True | |||
|
5.66 μs | 6.05 μs | 1.07 | 0.00 | True | |||
|
458.59 μs | 711.78 μs | 1.55 | 0.00 | True | |||
|
92.00 ns | 168.59 ns | 1.83 | 0.02 | True | |||
|
127.08 ns | 260.81 ns | 2.05 | 0.00 | True | |||
|
532.92 ns | 802.56 ns | 1.51 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
82.55 μs | 92.08 μs | 1.12 | 0.10 | False | |||
|
7.26 μs | 7.99 μs | 1.10 | 0.14 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
20.40 μs | 43.39 μs | 2.13 | 0.01 | True | |||
|
68.31 μs | 75.51 μs | 1.11 | 0.01 | False | |||
|
18.89 μs | 43.25 μs | 2.29 | 0.01 | True | |||
|
19.40 μs | 42.44 μs | 2.19 | 0.01 | True | |||
|
32.37 μs | 52.22 μs | 1.61 | 0.00 | True | |||
|
47.50 μs | 57.38 μs | 1.21 | 0.01 | False | |||
|
20.25 μs | 43.88 μs | 2.17 | 0.00 | True | |||
|
26.92 μs | 46.88 μs | 1.74 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
3.38 μs | 3.60 μs | 1.07 | 0.01 | False | |||
|
3.38 μs | 3.62 μs | 1.07 | 0.01 | False | |||
|
18.46 μs | 20.47 μs | 1.11 | 0.01 | True | |||
|
5.46 μs | 5.91 μs | 1.08 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
325.39 ms | 428.38 ms | 1.32 | 0.01 | True | |||
|
323.44 ms | 430.08 ms | 1.33 | 0.02 | True | |||
|
327.91 ms | 436.82 ms | 1.33 | 0.03 | True | |||
|
329.47 ms | 435.41 ms | 1.32 | 0.02 | True | |||
|
322.95 ms | 430.42 ms | 1.33 | 0.02 | True | |||
|
329.01 ms | 437.79 ms | 1.33 | 0.02 | True | |||
|
324.24 ms | 428.76 ms | 1.32 | 0.01 | True | |||
|
351.16 ms | 437.31 ms | 1.25 | 0.02 | True | |||
|
324.59 ms | 430.69 ms | 1.33 | 0.01 | True | |||
|
322.64 ms | 429.40 ms | 1.33 | 0.01 | True | |||
|
323.17 ms | 429.40 ms | 1.33 | 0.02 | True | |||
|
328.64 ms | 437.12 ms | 1.33 | 0.03 | True | |||
|
330.27 ms | 435.81 ms | 1.32 | 0.01 | True | |||
|
324.69 ms | 429.94 ms | 1.32 | 0.01 | True | |||
|
329.34 ms | 438.70 ms | 1.33 | 0.02 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 826202067a38eea5c1fee492df5a9814fe1a080f |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
8.12 μs | 8.68 μs | 1.07 | 0.06 | False | |||
|
5.99 μs | 8.26 μs | 1.38 | 0.22 | False | |||
|
5.23 μs | 6.17 μs | 1.18 | 0.06 | False | |||
|
5.23 μs | 5.93 μs | 1.13 | 0.08 | False | |||
|
6.30 μs | 8.01 μs | 1.27 | 0.05 | False | |||
|
8.59 μs | 10.31 μs | 1.20 | 0.10 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
820.77 ns | 1.13 μs | 1.38 | 0.01 | True | |||
|
612.94 ns | 887.18 ns | 1.45 | 0.03 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
733.29 ms | 822.53 ms | 1.12 | 0.09 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.09 μs | 1.41 μs | 1.30 | 0.00 | True | |||
|
1.16 μs | 1.44 μs | 1.24 | 0.02 | True | |||
|
1.14 μs | 1.41 μs | 1.24 | 0.00 | True | |||
|
1.18 μs | 1.49 μs | 1.26 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
846.14 μs | 908.94 μs | 1.07 | 0.01 | False | |||
|
765.33 μs | 820.89 μs | 1.07 | 0.00 | False | |||
|
832.11 μs | 892.20 μs | 1.07 | 0.01 | False | |||
|
810.30 μs | 861.63 μs | 1.06 | 0.01 | False | |||
|
846.56 μs | 897.77 μs | 1.06 | 0.00 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
63.30 ns | 71.13 ns | 1.12 | 0.00 | True | |||
|
4.24 μs | 5.40 μs | 1.27 | 0.11 | False | |||
|
79.26 ns | 125.70 ns | 1.59 | 0.01 | True | |||
|
113.00 ns | 125.47 ns | 1.11 | 0.01 | True | |||
|
3.40 μs | 4.19 μs | 1.23 | 0.03 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
3.08 μs | 3.28 μs | 1.07 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.16 ms | 1.28 ms | 1.10 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
103.24 μs | 118.01 μs | 1.14 | 0.12 | False | |||
|
112.19 μs | 127.51 μs | 1.14 | 0.04 | False | |||
|
99.57 μs | 114.75 μs | 1.15 | 0.10 | False | |||
|
122.13 μs | 136.70 μs | 1.12 | 0.14 | False | |||
|
122.51 μs | 137.18 μs | 1.12 | 0.15 | False | |||
|
102.80 μs | 118.14 μs | 1.15 | 0.05 | True | |||
|
100.13 μs | 115.78 μs | 1.16 | 0.08 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 826202067a38eea5c1fee492df5a9814fe1a080f |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
810.17 ns | 2.31 μs | 2.85 | 0.01 | True | |||
|
70.05 ns | 163.88 ns | 2.34 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
189.42 ns | 239.12 ns | 1.26 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
2.43 μs | 2.99 μs | 1.23 | 0.01 | False | |||
|
1.73 μs | 1.97 μs | 1.14 | 0.02 | False | |||
|
2.10 μs | 2.40 μs | 1.14 | 0.01 | False | |||
|
1.96 μs | 2.44 μs | 1.25 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
5.27 μs | 5.89 μs | 1.12 | 0.00 | True | |||
|
3.16 μs | 3.47 μs | 1.10 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 826202067a38eea5c1fee492df5a9814fe1a080f |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
798.50 μs | 924.83 μs | 1.16 | 0.01 | True | |||
|
791.20 μs | 924.70 μs | 1.17 | 0.00 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
4.99 ns | 7.83 ns | 1.57 | 0.00 | True | |||
|
6.62 ns | 10.14 ns | 1.53 | 0.28 | False | |||
|
6.10 ns | 7.61 ns | 1.25 | 0.21 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.39 μs | 1.80 μs | 1.29 | 0.01 | True | |||
|
1.16 μs | 1.27 μs | 1.09 | 0.01 | False | |||
|
1.94 μs | 2.28 μs | 1.18 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
91.56 ns | 147.85 ns | 1.61 | 0.03 | True | |||
|
89.96 ns | 150.78 ns | 1.68 | 0.02 | True | |||
|
721.13 ns | 784.71 ns | 1.09 | 0.01 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
9.00 ns | 10.34 ns | 1.15 | 0.29 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
432.80 ms | 455.20 ms | 1.05 | 0.00 | False | |||
|
303.04 ms | 325.71 ms | 1.07 | 0.00 | True | |||
|
298.72 ms | 324.83 ms | 1.09 | 0.00 | True | |||
|
203.59 ns | 238.30 ns | 1.17 | 0.00 | False | |||
|
5.05 secs | 8.47 secs | 1.68 | 0.00 | True | |||
|
5.14 secs | 8.57 secs | 1.67 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
4.45 μs | 4.96 μs | 1.11 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 826202067a38eea5c1fee492df5a9814fe1a080f |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
110.25 μs | 120.39 μs | 1.09 | 0.20 | False | |||
|
296.24 μs | 331.42 μs | 1.12 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
454.51 ns | 1.23 μs | 2.71 | 0.01 | True | |||
|
48.26 ns | 95.37 ns | 1.98 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.85 μs | 1.97 μs | 1.07 | 0.02 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.84 μs | 2.24 μs | 1.22 | 0.01 | True | |||
|
1.85 μs | 2.14 μs | 1.16 | 0.04 | True | |||
|
1.88 μs | 2.15 μs | 1.14 | 0.04 | False | |||
|
1.82 μs | 2.13 μs | 1.17 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
220.94 ns | 597.66 ns | 2.71 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
7.24 ns | 8.77 ns | 1.21 | 0.32 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
826.39 μs | 1.01 ms | 1.22 | 0.06 | True | |||
|
822.96 μs | 1.00 ms | 1.22 | 0.02 | True | |||
|
1.35 ms | 1.60 ms | 1.18 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
171.01 ns | 182.48 ns | 1.07 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
31.84 ns | 42.78 ns | 1.34 | 0.01 | True | |||
|
216.59 ns | 595.53 ns | 2.75 | 0.00 | True | |||
|
33.15 ns | 42.67 ns | 1.29 | 0.38 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
94.72 μs | 117.94 μs | 1.25 | 0.00 | True | |||
|
159.42 μs | 172.13 μs | 1.08 | 0.12 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
8.44 μs | 9.12 μs | 1.08 | 0.27 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
2.41 μs | 2.72 μs | 1.13 | 0.01 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
1.03 ms | 1.17 ms | 1.14 | 0.02 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
291.10 ns | 1.00 μs | 3.45 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
107.74 μs | 123.39 μs | 1.15 | 0.02 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
50.89 ns | 60.78 ns | 1.19 | 0.03 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
456.18 ns | 684.24 ns | 1.50 | 0.33 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
315.30 ns | 363.90 ns | 1.15 | 0.00 | True | |||
|
14.08 ns | 15.77 ns | 1.12 | 0.34 | False |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
104.92 μs | 118.84 μs | 1.13 | 0.01 | True | |||
|
159.36 μs | 183.05 μs | 1.15 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 08426cd832dade35426b511284dc4e843054dcf5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
460.33 ns | 1.24 μs | 2.68 | 0.00 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 22.04 |
Queue | TigerUbuntu |
Baseline | b2db8513a9c759587efea5cc00e28a2241c8572c |
Compare | 8aea53e25f1e78bfbc31f91c6342177eb548eaa5 |
Diff | Diff |
Configs | CompilationMode:tiered, LLVM:false, MonoAOT:false, MonoInterpreter:false, RunKind:micro_mono |
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
|
7.21 μs | 8.27 μs | 1.15 | 0.02 | True |
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
It seems that it would be caused by https://github.com/dotnet/runtime/pull/98812. @EgorBo do you think it could be related?
It seems that I would be caused by dotnet/runtime#98812. @EgorBo do you think it could be related?
it's very likely could be if mono does something special for WriteUnaligned. I think that change is correct and if Mono needs to do something for WriteUnaligned (e.g. emit memcpy) - it should not use the unrolled managed impl at all.
Do you know in which cases WriteUnaligned is special on Mono?
We have WriteUnaligned
intrinsified here
It seems it takes different codepaths depending on platform, and it differs between arm and x64. Which would explain why this hasn't been visible on arm. @matouskozak, I think you have been dealing with Unaligned reads/writes
in mono once, do you have some insights maybe?
Do you know in which cases WriteUnaligned is special on Mono?
I think you have been dealing with Unaligned reads/writes in mono once, do you have some insights maybe?
From top of my head I don't know. I'll try to get the codegen diff to see what happened.
It seems it takes different codepaths depending on platform, and it differs between arm and x64.
Could you please share the part where it differs between arm64 and x64?
Which would explain why this hasn't been visible on arm.
I can't even find Microbenchmarks.Serializers.*
benchmarks in the list of all microbenchmarks for x64/arm64 AOT-llvm https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu%2022.04_LLVM=true_MonoAOT=true_MonoInterpreter=false_RunKind=micro_mono/AllTestindex.html. @DrewScoggins am I blind or doing something wrong? Searching for Microbenchmarks.Serializers.
doesn't give my any results for the x64/arm64 AOT-llvm (for MonoJIT it does).
Could you please share the part where it differs between arm64 and x64? https://github.com/dotnet/runtime/blob/779baa695d614e45f013b0ebaefc1d3889516800/src/mono/mono/mini/memory-access.c#L529-L538
Sorry, I was referring to this. But I now see that this tag is set on ARM. Not Arm64. So the behaviour should be the same for x64 and arm64
I think we can revert the PR given the impact if nothing pops up at a quick look
I took a brief look at the codegen and found some differences, e.g. this:
<BB>:25
39e: b8 40 00 00 00 mov $0x40,%eax
3a3: ba 40 00 00 00 mov $0x40,%edx
3a8: 48 83 ea 01 sub $0x1,%rdx
3ac: 49 8b cd mov %r13,%rcx
3af: 48 23 ca and %rdx,%rcx
3b2: 48 2b c1 sub %rcx,%rax
3b5: 48 89 44 24 30 mov %rax,0x30(%rsp)
3ba: 49 8b fd mov %r13,%rdi
3bd: 49 8b f6 mov %r14,%rsi
3c0: ba 40 00 00 00 mov $0x40,%edx
3c5: 66 90 xchg %ax,%ax
3c7: e8 74 01 00 00 call 540 <tem_SpanHelpers_Memmove__byte__byte__uintptr_+0x540>
3cc: 4c 03 74 24 30 add 0x30(%rsp),%r14
3d1: 4c 03 6c 24 30 add 0x30(%rsp),%r13
3d6: 4c 2b 7c 24 30 sub 0x30(%rsp),%r15
<BB>:24
3db: 49 8b ef mov %r15,%rbp
3de: 48 c1 ed 06 shr $0x6,%rbp
3e2: 48 8d 64 24 00 lea 0x0(%rsp),%rsp
3e7: 90 nop
<BB>:26
3e8: 48 b8 b8 54 7d e7 bb movabs $0x71bbe77d54b8,%rax
3ef: 71 00 00
3f2: f7 00 01 00 00 00 testl $0x1,(%rax)
against
<BB>:25
7cf: b8 40 00 00 00 mov $0x40,%eax
7d4: ba 40 00 00 00 mov $0x40,%edx
7d9: 48 83 ea 01 sub $0x1,%rdx
7dd: 49 8b cd mov %r13,%rcx
7e0: 48 23 ca and %rdx,%rcx
7e3: 48 2b c1 sub %rcx,%rax
7e6: 48 89 84 24 00 01 00 mov %rax,0x100(%rsp)
7ed: 00
7ee: 48 8d bc 24 80 00 00 lea 0x80(%rsp),%rdi
7f5: 00
7f6: 49 8b f6 mov %r14,%rsi
7f9: ba 40 00 00 00 mov $0x40,%edx
7fe: 90 nop
7ff: e8 5f 02 00 00 call a63 <tem_SpanHelpers_Memmove__byte__byte__uintptr_+0xa63>
804: 48 8d b4 24 80 00 00 lea 0x80(%rsp),%rsi
80b: 00
80c: 49 8b fd mov %r13,%rdi
80f: ba 40 00 00 00 mov $0x40,%edx
814: 66 66 90 data16 xchg %ax,%ax
817: e8 47 02 00 00 call a63 <tem_SpanHelpers_Memmove__byte__byte__uintptr_+0xa63>
81c: 4c 03 b4 24 00 01 00 add 0x100(%rsp),%r14
823: 00
824: 4c 03 ac 24 00 01 00 add 0x100(%rsp),%r13
82b: 00
82c: 4c 2b bc 24 00 01 00 sub 0x100(%rsp),%r15
833: 00
<BB>:24
834: 49 8b ef mov %r15,%rbp
837: 48 c1 ed 06 shr $0x6,%rbp
83b: 48 8d 64 24 00 lea 0x0(%rsp),%rsp
<BB>:26
840: 48 b8 b8 54 1d ce ad movabs $0x77adce1d54b8,%rax
847: 77 00 00
84a: f7 00 01 00 00 00 testl $0x1,(%rax)
I'm not an expert in this but looks like something used to get inline before which now results in an extra call. What do you think @EgorBo ?
No idea what those calls are to be honest. I'd check what Mono does for Unsafe.WriteUnaligned(ref dest, Unsafe.ReadUnaligned<Block64>(ref src));
@EgorBot -commit main -mono --envvars MONO_VERBOSE_METHOD:TestMethod
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
BenchmarkRunner.Run<Bench>(args: args);
public class Bench
{
private static byte[] a = new byte[64];
private static byte[] b = new byte[64];
[Benchmark]
public void CheckedWB_InHeap() => TestMethod(ref a[0], ref b[0]);
[MethodImpl(MethodImplOptions.NoInlining)]
void TestMethod(ref byte src, ref byte dest) =>
Unsafe.WriteUnaligned(ref dest, Unsafe.ReadUnaligned<Block64>(ref src));
}
[StructLayout(LayoutKind.Sequential, Size = 64)]
public struct Block64 { }
@matouskozak yeah there is definitely something wrong with Unsafe.WriteUnaligned(ref dest, Unsafe.ReadUnaligned<Block64>(ref src));
vs Unsafe.As<byte, Block64>(ref dest) = Unsafe.As<byte, Block64>(ref src);
the latter is 2x faster on Mono while should be no difference.
I took a Mono sample app on macOS-arm64 and compared:
[StructLayout(LayoutKind.Sequential, Size = 64)]
public struct Block64 {}
Unsafe.As<byte, Block64>(ref dest) = Unsafe.As<byte, Block64>(ref src);
vs.
Unsafe.WriteUnaligned(ref dest, Unsafe.ReadUnaligned<Block64>(ref src));
And I think the codegen diff that's causing the issue. For Unsafe.As
we use move:
0000000000000000 stp x29, x30, [sp, #-0x20]!
0000000000000004 mov x29, sp
0000000000000008 str x0, [x29, #0x10]
000000000000000c str x1, [x29, #0x18]
0000000000000010 mov x0, #0xe3c0
0000000000000014 movk x0, #0x2df, lsl #16
0000000000000018 movk x0, #0x1, lsl #32
000000000000001c ldr x17, [x0]
0000000000000020 cbz x17, 0x28
0000000000000024 bl 0xffffffffffbe5018
0000000000000028 ldr x0, [x29, #0x10]
000000000000002c ldr x1, [x29, #0x18]
0000000000000030 mov x2, #0x40
0000000000000034 bl 0xffffffffffbf6500
0000000000000038 mov sp, x29
000000000000003c ldp x29, x30, [sp], #0x20
0000000000000040 ret
whereas for WriteUnaligned
we emit stores:
0000000000000000 stp x29, x30, [sp, #-0x60]!
0000000000000004 mov x29, sp
0000000000000008 str x0, [x29, #0x10]
000000000000000c str x1, [x29, #0x18]
0000000000000010 ldr x1, [x29, #0x18]
0000000000000014 add x0, x29, #0x20
0000000000000018 mov x2, #0x40
000000000000001c bl 0xffffffffffbf6760
0000000000000020 add x1, x29, #0x20
0000000000000024 ldr x0, [x29, #0x10]
0000000000000028 mov x2, #0x40
000000000000002c bl 0xffffffffffbf6760
0000000000000030 mov sp, x29
0000000000000034 ldp x29, x30, [sp], #0x60
0000000000000038 ret
Which also can be seen in the code for Unsafe
intrinsics: https://github.com/dotnet/runtime/blob/3622bfa4329faa73551b2508aade7777a04a3ca8/src/mono/mono/mini/intrinsics.c#L437 vs https://github.com/dotnet/runtime/blob/3622bfa4329faa73551b2508aade7777a04a3ca8/src/mono/mono/mini/intrinsics.c#L598
Note it didn't show this difference when I used long
instead of Block64
struct.
I took a Mono sample app on macOS-arm64 and compared:
[StructLayout(LayoutKind.Sequential, Size = 64)] public struct Block64 {} Unsafe.As<byte, Block64>(ref dest) = Unsafe.As<byte, Block64>(ref src); vs. Unsafe.WriteUnaligned(ref dest, Unsafe.ReadUnaligned<Block64>(ref src));
And I think the codegen diff that's causing the issue. For
Unsafe.As
we use move:0000000000000000 stp x29, x30, [sp, #-0x20]! 0000000000000004 mov x29, sp 0000000000000008 str x0, [x29, #0x10] 000000000000000c str x1, [x29, #0x18] 0000000000000010 mov x0, #0xe3c0 0000000000000014 movk x0, #0x2df, lsl #16 0000000000000018 movk x0, #0x1, lsl #32 000000000000001c ldr x17, [x0] 0000000000000020 cbz x17, 0x28 0000000000000024 bl 0xffffffffffbe5018 0000000000000028 ldr x0, [x29, #0x10] 000000000000002c ldr x1, [x29, #0x18] 0000000000000030 mov x2, #0x40 0000000000000034 bl 0xffffffffffbf6500 0000000000000038 mov sp, x29 000000000000003c ldp x29, x30, [sp], #0x20 0000000000000040 ret
whereas for
WriteUnaligned
we emit stores:0000000000000000 stp x29, x30, [sp, #-0x60]! 0000000000000004 mov x29, sp 0000000000000008 str x0, [x29, #0x10] 000000000000000c str x1, [x29, #0x18] 0000000000000010 ldr x1, [x29, #0x18] 0000000000000014 add x0, x29, #0x20 0000000000000018 mov x2, #0x40 000000000000001c bl 0xffffffffffbf6760 0000000000000020 add x1, x29, #0x20 0000000000000024 ldr x0, [x29, #0x10] 0000000000000028 mov x2, #0x40 000000000000002c bl 0xffffffffffbf6760 0000000000000030 mov sp, x29 0000000000000034 ldp x29, x30, [sp], #0x60 0000000000000038 ret
Which also can be seen in the code for
Unsafe
intrinsics: https://github.com/dotnet/runtime/blob/3622bfa4329faa73551b2508aade7777a04a3ca8/src/mono/mono/mini/intrinsics.c#L437 vs https://github.com/dotnet/runtime/blob/3622bfa4329faa73551b2508aade7777a04a3ca8/src/mono/mono/mini/intrinsics.c#L598Note it didn't show this difference when I used
long
instead ofBlock64
struct.
I misread the assembly outputs. It still is different but the difference happens at:
0000000000000010 mov x0, #0x63c0
0000000000000014 movk x0, #0x3c7, lsl #16
0000000000000018 movk x0, #0x1, lsl #32
000000000000001c ldr x17, [x0]
0000000000000020 cbz x17, 0x28
vs
0000000000000010 ldr x1, [x29, #0x18]
0000000000000014 add x0, x29, #0x20
0000000000000018 mov x2, #0x40
and
0000000000000028 ldr x0, [x29, #0x10]
000000000000002c ldr x1, [x29, #0x18]
0000000000000030 mov x2, #0x40
vs
0000000000000020 add x1, x29, #0x20
0000000000000024 ldr x0, [x29, #0x10]
0000000000000028 mov x2, #0x40
Do you know what is that branch for? is it maybe some "unaligned reads allowed" flag?
Do you know what is that branch for? is it maybe some "unaligned reads allowed" flag?
I'm not yet sure where it's coming from but it's an extra mempy call:
Unsafe.As
:
LOCAL REGALLOC BLOCK 3:
1 il_seq_point intr il: 0x0
2 il_seq_point il: 0x1
3 il_seq_point il: 0x7, nonempty-stack
4 il_seq_point il: 0xd, nonempty-stack
5 load_membase R39 <- [fp + 0x10]
6 nop
7 load_membase R40 <- [fp + 0x18]
8 nop
9 iconst R41 <- [64]
10 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R39] [r1 <- R40] [r2 <- R41] clobbers: c
11 il_seq_point il: 0x17
vs
Unsafe.Write/ReadUnaligned
LOCAL REGALLOC BLOCK 3:
1 il_seq_point intr il: 0x0
2 il_seq_point il: 0x1
3 load_membase R37 <- [fp + 0x18]
4 add_imm R38 <- fp [32]
5 move R40 <- R38
6 move R41 <- R37
7 iconst R42 <- [64]
8 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R40] [r1 <- R41] [r2 <- R42] clobbers: c
9 il_seq_point il: 0x8, nonempty-stack
10 add_imm R43 <- fp [32]
11 load_membase R44 <- [fp + 0x10]
12 move R46 <- R44
13 move R47 <- R43
14 iconst R48 <- [64]
15 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R46] [r1 <- R47] [r2 <- R48] clobbers: c
16 il_seq_point il: 0xd, nonempty-stack
17 il_seq_point il: 0xd
18 il_seq_point il: 0xe
https://github.com/EgorBo/UtilsRunner/issues/4#issuecomment-2302176580
In theory, we could use e.g. Unsafe.CopyBlockUnaligned(ref dest, ref src, 64)
, which doesn't have these regressions.
In theory, we could use e.g.
Unsafe.CopyBlockUnaligned(ref dest, ref src, 64)
, which doesn't have these regressions.
we can't. it's potentially a recursion for coreclr. CopyBlockUnaligned
is implemented as Memmove call
Do you know what is that branch for? is it maybe some "unaligned reads allowed" flag?
I'm not yet sure where it's coming from but it's an extra mempy call:
Unsafe.As
:LOCAL REGALLOC BLOCK 3: 1 il_seq_point intr il: 0x0 2 il_seq_point il: 0x1 3 il_seq_point il: 0x7, nonempty-stack 4 il_seq_point il: 0xd, nonempty-stack 5 load_membase R39 <- [fp + 0x10] 6 nop 7 load_membase R40 <- [fp + 0x18] 8 nop 9 iconst R41 <- [64] 10 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R39] [r1 <- R40] [r2 <- R41] clobbers: c 11 il_seq_point il: 0x17
vs
Unsafe.Write/ReadUnaligned
LOCAL REGALLOC BLOCK 3: 1 il_seq_point intr il: 0x0 2 il_seq_point il: 0x1 3 load_membase R37 <- [fp + 0x18] 4 add_imm R38 <- fp [32] 5 move R40 <- R38 6 move R41 <- R37 7 iconst R42 <- [64] 8 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R40] [r1 <- R41] [r2 <- R42] clobbers: c 9 il_seq_point il: 0x8, nonempty-stack 10 add_imm R43 <- fp [32] 11 load_membase R44 <- [fp + 0x10] 12 move R46 <- R44 13 move R47 <- R43 14 iconst R48 <- [64] 15 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R46] [r1 <- R47] [r2 <- R48] clobbers: c 16 il_seq_point il: 0xd, nonempty-stack 17 il_seq_point il: 0xd 18 il_seq_point il: 0xe
Upon further look, it looks to be related to alignment. It's copying src
from [x29 + 0x18] to [x29 + 0x20] before making the final memcpy to dest
.
Do you know what is that branch for? is it maybe some "unaligned reads allowed" flag?
I'm not yet sure where it's coming from but it's an extra mempy call:
Unsafe.As
:LOCAL REGALLOC BLOCK 3: 1 il_seq_point intr il: 0x0 2 il_seq_point il: 0x1 3 il_seq_point il: 0x7, nonempty-stack 4 il_seq_point il: 0xd, nonempty-stack 5 load_membase R39 <- [fp + 0x10] 6 nop 7 load_membase R40 <- [fp + 0x18] 8 nop 9 iconst R41 <- [64] 10 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R39] [r1 <- R40] [r2 <- R41] clobbers: c 11 il_seq_point il: 0x17
vs
Unsafe.Write/ReadUnaligned
LOCAL REGALLOC BLOCK 3: 1 il_seq_point intr il: 0x0 2 il_seq_point il: 0x1 3 load_membase R37 <- [fp + 0x18] 4 add_imm R38 <- fp [32] 5 move R40 <- R38 6 move R41 <- R37 7 iconst R42 <- [64] 8 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R40] [r1 <- R41] [r2 <- R42] clobbers: c 9 il_seq_point il: 0x8, nonempty-stack 10 add_imm R43 <- fp [32] 11 load_membase R44 <- [fp + 0x10] 12 move R46 <- R44 13 move R47 <- R43 14 iconst R48 <- [64] 15 voidcall [void string:memcpy (byte*,byte*,int)] [r0 <- R46] [r1 <- R47] [r2 <- R48] clobbers: c 16 il_seq_point il: 0xd, nonempty-stack 17 il_seq_point il: 0xd 18 il_seq_point il: 0xe
Upon further look, it looks to be related to alignment. It's copying
src
from [x29 + 0x18] to [x29 + 0x20] before making the final memcpy todest
.
@EgorBo my guess is that Mono doesn't optimize WriteUnaligned
and ReadUnaligned
into a single memcpy
and that is why were seeing this extra call. Setting unaligned flag to zero in Mono doesn't change the behavior. I think we should backport the revert of https://github.com/dotnet/runtime/pull/98812 to .NET 9. What do you think? cc: @steveisok
I think we should backport the revert of dotnet/runtime#98812 to .NET 9.
@jkotas Presumably we could revert in the HAS_CUSTOM_BLOCKS
case. In that case, using ReadUnaligned
/WriteUnaligned
seems unnecessary, as unaligned access should be supported when HAS_CUSTOM_BLOCKS
is defined:
https://github.com/xtqqczze/dotnet-runtime/commit/0a990d8178df247b40425cec941d276f49b24fb3
think we should backport the revert of https://github.com/dotnet/runtime/pull/98812 to .NET 9
https://github.com/dotnet/runtime/pull/98812 is good change. It makes the code more correct, more portable and smaller.
If Mono has perf issues with it, we should put the old code into Mono CoreLib only.
think we should backport the revert of dotnet/runtime#98812 to .NET 9
dotnet/runtime#98812 is good change. It makes the code more correct, more portable and smaller.
If Mono has perf issues with it, we should put the old code into Mono CoreLib only.
I agree, making the changes just for Mono is fine by me. A question, what is "Mono CoreLib"? I didn't know there is a specific version of CoreLib for Mono... Or is this just an #ifdef
case for Mono-only code?
Here is an example that this can follow:
Here is an example that this can follow:
Do we want to duplicate the entire method instead of something like:
#if HAS_CUSTOM_BLOCKS && !MONO
Unsafe.WriteUnaligned(ref dest, Unsafe.ReadUnaligned<Block16>(ref src));
#elif HAS_CUSTOM_BLOCKS && MONO
Unsafe.As<byte, Block16>(ref dest) = Unsafe.As<byte, Block16>(ref src);
#elif TARGET_64BIT
// ...
It feels like Mono should just avoid defining HAS_CUSTOM_BLOCKS
symbol at all and it will be correct as is, given that ReadUnaligned/WriteUnaligned are ok for primitives like @matouskozak said ^
Yes, it seems to fix the issue https://github.com/dotnet/runtime/pull/106764
Note: we reverted https://github.com/dotnet/runtime/pull/106764 because of related regression on MonoAOT and MonoInterpreter (https://github.com/dotnet/runtime/issues/107308#issuecomment-2337333734). Consequently, regressions listed in this issue are still present on MonoJIT. The work to fix these regressions is tracked at https://github.com/dotnet/runtime/issues/106822.
@EgorBo Given the fix for these regressions was reverted, perhaps we should revert https://github.com/dotnet/runtime/pull/98812 for .NET 9?
@EgorBo Given the fix for these regressions was reverted, perhaps we should revert dotnet/runtime#98812 for .NET 9?
I think we are going to accept the MonoJIT regressions for .NET 9 based on the conclusion from https://github.com/dotnet/runtime/issues/107308#issuecomment-2337882284 and address the regression with a proper fix to the codegen in .NET 10 release. We could go with the temporary solution in a form of MonoLib-specific implementation as suggested in https://github.com/dotnet/perf-autofiling-issues/issues/33182#issuecomment-2302423939 which would contain the reverted code of https://github.com/dotnet/runtime/pull/98812 but we are getting close to the .NET 9 release and we would have to test it on all Mono codegens before proposing it for .NET 9. cc: @vitek-karas @steveisok
@matouskozak - should we reopen this issue then - since the regression is still "active"?
Run Information
Regressions in System.Formats.Cbor.Tests.Perf_CborWriter
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
#### Prerequisites (Build files either built locally or downloaded from payload above) - Libraries build extracted to `runtime/artifacts` or build instructions: [Libraries README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/README.md) args: `-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0` - CoreCLR product build extracted to `runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release`, build instructions: [CoreCLR README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/coreclr/README.md) args: `-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0` - Mono Runtime build extracted to `runtime/artifacts/bin/mono/$RunOS.$RunArch.Release`, build instructions: [MONO README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/mono/README.md) args: `-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release ` - Dotnet SDK installed for dotnet commands - Running commands from the runtime folder Linux ```cmd # Set $RunDir to the runtime directory RunDir=`pwd` # Set the OS, arch, and OSId RunOS='linux' RunOSId='linux' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir/artifacts/bin/mono/$RunOS.$RunArch.Release /p:RuntimeFlavor=mono cp $RunDir/artifacts/bin/runtime/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/shared/Microsoft.NETCore.App/8.0.0 -rf cp $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/dotnet-mono -r cp $RunDir/artifacts/bin/coreclr/$RunOS.$RunArch.Release/corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun # Create Core Root $RunDir/src/tests/build.sh release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir/performance # One line run: python3 $RunDir/performance/scripts/benchmarks_ci.py --csproj $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'System.Formats.Cbor.Tests.Perf_CborWriter*' --bdn-artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun" # Individual Commands: # Restore dotnet restore $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --packages $RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'System.Formats.Cbor.Tests.Perf_CborWriter*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun --artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --packages $RunDir/performance/artifacts/packages ``` Windows ```cmd # Set $RunDir to the runtime directory $RunDir="FullPathHere" # Set the OS, arch, and OSId RunOS='windows' RunOSId='win' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir\artifacts\bin\mono\$RunOS.$RunArch.Release /p:RuntimeFlavor=mono xcopy $RunDir\artifacts\bin\runtime\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\shared\Microsoft.NETCore.App\8.0.0\ /e /y xcopy $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\dotnet-mono\ /e /y xcopy $RunDir\artifacts\bin\coreclr\$RunOS.$RunArch.Release\corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun /y # Create Core Root $RunDir\src\tests\build.cmd release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir\performance # One line run: python3 $RunDir\performance\scripts\benchmarks_ci.py --csproj $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'System.Formats.Cbor.Tests.Perf_CborWriter*' --bdn-artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe" # Individual Commands: # Restore dotnet restore $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --packages $RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'System.Formats.Cbor.Tests.Perf_CborWriter*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe --artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --packages $RunDir\performance\artifacts\packages ```Run Information
Regressions in System.Collections.CreateAddAndRemove<Int32>
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
#### Prerequisites (Build files either built locally or downloaded from payload above) - Libraries build extracted to `runtime/artifacts` or build instructions: [Libraries README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/README.md) args: `-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0` - CoreCLR product build extracted to `runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release`, build instructions: [CoreCLR README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/coreclr/README.md) args: `-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0` - Mono Runtime build extracted to `runtime/artifacts/bin/mono/$RunOS.$RunArch.Release`, build instructions: [MONO README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/mono/README.md) args: `-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release ` - Dotnet SDK installed for dotnet commands - Running commands from the runtime folder Linux ```cmd # Set $RunDir to the runtime directory RunDir=`pwd` # Set the OS, arch, and OSId RunOS='linux' RunOSId='linux' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir/artifacts/bin/mono/$RunOS.$RunArch.Release /p:RuntimeFlavor=mono cp $RunDir/artifacts/bin/runtime/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/shared/Microsoft.NETCore.App/8.0.0 -rf cp $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/dotnet-mono -r cp $RunDir/artifacts/bin/coreclr/$RunOS.$RunArch.Release/corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun # Create Core Root $RunDir/src/tests/build.sh release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir/performance # One line run: python3 $RunDir/performance/scripts/benchmarks_ci.py --csproj $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'System.Collections.CreateAddAndRemove<Int32>*' --bdn-artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun" # Individual Commands: # Restore dotnet restore $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --packages $RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'System.Collections.CreateAddAndRemove<Int32>*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun --artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --packages $RunDir/performance/artifacts/packages ``` Windows ```cmd # Set $RunDir to the runtime directory $RunDir="FullPathHere" # Set the OS, arch, and OSId RunOS='windows' RunOSId='win' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir\artifacts\bin\mono\$RunOS.$RunArch.Release /p:RuntimeFlavor=mono xcopy $RunDir\artifacts\bin\runtime\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\shared\Microsoft.NETCore.App\8.0.0\ /e /y xcopy $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\dotnet-mono\ /e /y xcopy $RunDir\artifacts\bin\coreclr\$RunOS.$RunArch.Release\corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun /y # Create Core Root $RunDir\src\tests\build.cmd release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir\performance # One line run: python3 $RunDir\performance\scripts\benchmarks_ci.py --csproj $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'System.Collections.CreateAddAndRemove<Int32>*' --bdn-artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe" # Individual Commands: # Restore dotnet restore $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --packages $RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'System.Collections.CreateAddAndRemove<Int32>*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe --artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --packages $RunDir\performance\artifacts\packages ```Run Information
Regressions in System.Text.Json.Reader.Tests.Perf_Base64
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
#### Prerequisites (Build files either built locally or downloaded from payload above) - Libraries build extracted to `runtime/artifacts` or build instructions: [Libraries README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/README.md) args: `-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0` - CoreCLR product build extracted to `runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release`, build instructions: [CoreCLR README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/coreclr/README.md) args: `-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0` - Mono Runtime build extracted to `runtime/artifacts/bin/mono/$RunOS.$RunArch.Release`, build instructions: [MONO README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/mono/README.md) args: `-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release ` - Dotnet SDK installed for dotnet commands - Running commands from the runtime folder Linux ```cmd # Set $RunDir to the runtime directory RunDir=`pwd` # Set the OS, arch, and OSId RunOS='linux' RunOSId='linux' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir/artifacts/bin/mono/$RunOS.$RunArch.Release /p:RuntimeFlavor=mono cp $RunDir/artifacts/bin/runtime/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/shared/Microsoft.NETCore.App/8.0.0 -rf cp $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/dotnet-mono -r cp $RunDir/artifacts/bin/coreclr/$RunOS.$RunArch.Release/corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun # Create Core Root $RunDir/src/tests/build.sh release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir/performance # One line run: python3 $RunDir/performance/scripts/benchmarks_ci.py --csproj $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'System.Text.Json.Reader.Tests.Perf_Base64*' --bdn-artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun" # Individual Commands: # Restore dotnet restore $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --packages $RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'System.Text.Json.Reader.Tests.Perf_Base64*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun --artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --packages $RunDir/performance/artifacts/packages ``` Windows ```cmd # Set $RunDir to the runtime directory $RunDir="FullPathHere" # Set the OS, arch, and OSId RunOS='windows' RunOSId='win' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir\artifacts\bin\mono\$RunOS.$RunArch.Release /p:RuntimeFlavor=mono xcopy $RunDir\artifacts\bin\runtime\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\shared\Microsoft.NETCore.App\8.0.0\ /e /y xcopy $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\dotnet-mono\ /e /y xcopy $RunDir\artifacts\bin\coreclr\$RunOS.$RunArch.Release\corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun /y # Create Core Root $RunDir\src\tests\build.cmd release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir\performance # One line run: python3 $RunDir\performance\scripts\benchmarks_ci.py --csproj $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'System.Text.Json.Reader.Tests.Perf_Base64*' --bdn-artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe" # Individual Commands: # Restore dotnet restore $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --packages $RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'System.Text.Json.Reader.Tests.Perf_Base64*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe --artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --packages $RunDir\performance\artifacts\packages ```Run Information
Regressions in MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
#### Prerequisites (Build files either built locally or downloaded from payload above) - Libraries build extracted to `runtime/artifacts` or build instructions: [Libraries README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/README.md) args: `-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0` - CoreCLR product build extracted to `runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release`, build instructions: [CoreCLR README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/coreclr/README.md) args: `-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0` - Mono Runtime build extracted to `runtime/artifacts/bin/mono/$RunOS.$RunArch.Release`, build instructions: [MONO README](https://github.com/dotnet/runtime/blob/main/docs/workflow/building/mono/README.md) args: `-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release ` - Dotnet SDK installed for dotnet commands - Running commands from the runtime folder Linux ```cmd # Set $RunDir to the runtime directory RunDir=`pwd` # Set the OS, arch, and OSId RunOS='linux' RunOSId='linux' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir/artifacts/bin/mono/$RunOS.$RunArch.Release /p:RuntimeFlavor=mono cp $RunDir/artifacts/bin/runtime/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/shared/Microsoft.NETCore.App/8.0.0 -rf cp $RunDir/artifacts/bin/testhost/net8.0-$RunOS-Release-$RunArch/* $RunDir/artifacts/dotnet-mono -r cp $RunDir/artifacts/bin/coreclr/$RunOS.$RunArch.Release/corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun # Create Core Root $RunDir/src/tests/build.sh release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir/performance # One line run: python3 $RunDir/performance/scripts/benchmarks_ci.py --csproj $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>*' --bdn-artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun" # Individual Commands: # Restore dotnet restore $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --packages $RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir/performance/artifacts/packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir/performance/src/benchmarks/micro/MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir/artifacts/dotnet-mono/shared/Microsoft.NETCore.App/8.0.0/corerun --artifacts $RunDir/artifacts/BenchmarkDotNet.Artifacts --packages $RunDir/performance/artifacts/packages ``` Windows ```cmd # Set $RunDir to the runtime directory $RunDir="FullPathHere" # Set the OS, arch, and OSId RunOS='windows' RunOSId='win' RunArch='x64' # Create mono dotnet mkdir -p $RunDir/artifacts/dotnet-mono $RunDir/build.sh -subset libs.pretest -configuration release -ci -arch $RunArch -testscope innerloop /p:RuntimeArtifactsPath=$RunDir\artifacts\bin\mono\$RunOS.$RunArch.Release /p:RuntimeFlavor=mono xcopy $RunDir\artifacts\bin\runtime\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\shared\Microsoft.NETCore.App\8.0.0\ /e /y xcopy $RunDir\artifacts\bin\testhost\net8.0-$RunOS-Release-$RunArch\ $RunDir\artifacts\dotnet-mono\ /e /y xcopy $RunDir\artifacts\bin\coreclr\$RunOS.$RunArch.Release\corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun /y # Create Core Root $RunDir\src\tests\build.cmd release $RunArch generatelayoutonly /p:LibrariesConfiguration=Release # Clone performance git clone --branch main --depth 1 --quiet https://github.com/dotnet/performance.git $RunDir\performance # One line run: python3 $RunDir\performance\scripts\benchmarks_ci.py --csproj $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --incremental no --architecture $RunArch -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>*' --bdn-artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --bdn-arguments="--anyCategories Libraries Runtime --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe" # Individual Commands: # Restore dotnet restore $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --packages $RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Build dotnet build $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore /p:NuGetPackageRoot=$RunDir\performance\artifacts\packages /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 # Run dotnet run --project $RunDir\performance\src\benchmarks\micro\MicroBenchmarks.csproj --configuration Release --framework net8.0 --no-restore --no-build -- --filter 'MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>*' --anyCategories Libraries Runtime " --category-exclusion-filter NoInterpreter NoMono --logBuildOutput --generateBinLog --corerun $RunDir\artifacts\dotnet-mono\shared\Microsoft.NETCore.App\8.0.0\corerun.exe --artifacts $RunDir\artifacts\BenchmarkDotNet.Artifacts --packages $RunDir\performance\artifacts\packages ```