BenchmarkDotNet
BenchmarkDotNet copied to clipboard
Powerful .NET library for benchmarking
If these don't match then benchmark times will be either under or over estimated. Context https://github.com/dotnet/runtime/issues/86033#issuecomment-1546306621 This is the "good" case where the jit isn't messing up the workload invoke...
I was benchmarking the old and new version of my library and the benchmark methods were returning objects of a type with the same name from the old or new...
As of today, we generate the `.csproj` file by filling [this](https://github.com/dotnet/BenchmarkDotNet/blob/master/src/BenchmarkDotNet/Templates/CsProj.txt) text template. The main disadvantage of this approach is that if there are any custom `MSBuild` settings in the...
Sometimes we have troubles with `UnauthorizedAccessException` (we don't have access to the current directories) or long paths. I think, it would be great to provide a nice API which allows...
This test systematically fails in the `test-windows-full` workflow. [Example](https://github.com/dotnet/BenchmarkDotNet/actions/runs/5604464292/job/15183358928)
An individual benchmark method's name can be overridden for output purposes via the Description property on BenchmarkAttribute (see #1243 for a related issue on this). However, there doesn't seem to...
Hello BenchmarkDotNet folks! This PR is for discussion. I should have opened an issue maybe, but as I'm using this fix to actually see the counters in my project, better...
Implementation of attribute to rename class. ![image](https://user-images.githubusercontent.com/4707327/108546677-3994a280-72c8-11eb-92dd-993bf5e1aeda.png) ![image](https://user-images.githubusercontent.com/4707327/108546689-3c8f9300-72c8-11eb-82b2-5e1c20ef85ce.png) ![image](https://user-images.githubusercontent.com/4707327/108546695-3f8a8380-72c8-11eb-8f1e-76acc93efb69.png) ![image](https://user-images.githubusercontent.com/4707327/108546706-41ecdd80-72c8-11eb-976c-5bfa8f45b8c3.png) Closes #1447
While working on #2562, I found that `Job.WithGcForce(false)` doesn't do anything, and the Engine calling `ForceGcCleanups = targetJob.ResolveValue(GcMode.ForceCharacteristic, Resolver);` only ever returns the default value `true`. cc @AndreyAkinshin