Skip to content
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

[Need Help] Relative benchmarks (baseline)? #85

Open
ig-sinicyn opened this issue Mar 17, 2016 · 4 comments
Open

[Need Help] Relative benchmarks (baseline)? #85

ig-sinicyn opened this issue Mar 17, 2016 · 4 comments

Comments

@ig-sinicyn
Copy link

Hi!
I am trying to write perf tests for new implementation of some code and I want to compare its performance with the old version.

Ideally I want to mark one benchmark as a baseline and specify for others that there will be (lets say) no more than 0.9x by time and no more than 1.2x allocations compared to the baseline benchmark.
Also, if possible, I want to ignore peaks and assert for 90-95th percentile of samples.

Is something alike supported / possible with NBench? Thanks!

@Aaronontheweb
Copy link
Member

This is not possible to do with NBench currently because it's stateful - you need to have something that retains the state of one benchmark and can use it as a comparison. Our current design doesn't support this at the moment but it's something I would like to see too as it's inherently useful.

@ig-sinicyn
Copy link
Author

Ok, thanks!

@antondelsink
Copy link

@Aaronontheweb is the implementation of BenchmarkRunReport, MetricRunReport and BenchmarkFinalResults to be considered stable? I'm thinking of writing them to an Azure SQL DB using a new (additional) implementation of IBenchmarkOutput. That way I can point PowerBI at the data.

But for this we would need an async approach. Any preferences?

@nkast
Copy link

nkast commented Jan 31, 2017

Is it possible to change the output format into something more accessible, like XML, cvs, tab delimited, ...?
I could them combine and compare the values from the two files (baseline+current).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants