-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Perf] Linux/x64: 2 Regressions on 6/27/2024 6:42:30 AM #104303
Comments
Seems related to #102739 |
@huoyaoyuan Could you please take a look? |
It's about SetValue, which I didn't measure performance for. There isn't something obviously problematic at first glance. I'm also interested about the context of the improvement at May. |
It is possible that the micro-benchmark is bi-modal. It operates on a large array and it does a lot of boxing. Micro-benchmarks like this tend to be bi-modal. Does the regression reproduce on your machine? |
I can't reproduce the regression on array of smaller size: private int[,] array2D = new int[100, 100];
[Benchmark]
public void ArrayAccess2D()
{
for (int i = 0; i < 100; i++)
for (int j = 0; j < 100; j++)
array2D.SetValue(i + j, i, j);
}
|
@huoyaoyuan Thank you for checking! This is bi-modal/unstable benchmark. It operates on large array and it does a lot of allocations (boxing) that are unrelated to the operations being tested. Benchmarks like that tend to be unstable. Closing as by design. |
Run Information
Regressions in System.Tests.Perf_Array
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
System.Tests.Perf_Array.ArrayAssign3D
ETL Files
Histogram
JIT Disasms
System.Tests.Perf_Array.ArrayAssign2D
ETL Files
Histogram
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
The text was updated successfully, but these errors were encountered: