GithubHelp home page GithubHelp logo

Comments (7)

japaric avatar japaric commented on May 17, 2024 2

#15 is about letting the user run a custom analysis pass and for that we need to exposes the analysis methods (outliers, bootstrap, etc) as functions.

I think this issue should be prioritized over #15.

from criterion.rs.

dignifiedquire avatar dignifiedquire commented on May 17, 2024

This would be great if this could be done, happy to help. I am currently resorting to parsing the stdout which is not ideal.

My use case is, that I want the analyzed data shipped to a database so I can run easy comparisons over time.

from criterion.rs.

fredpointzero avatar fredpointzero commented on May 17, 2024

I would really appreviate this feature, I am currently using Criterion for automated performance regression tested, but parsing the output is not a reliable way to do it.

from criterion.rs.

fzyzcjy avatar fzyzcjy commented on May 17, 2024

Hi this is very appealing feature! I wonder when can we use this?

from criterion.rs.

NoraCodes avatar NoraCodes commented on May 17, 2024

I just wanted to hop in to ask for this as well. Currently, I'm using Criterion to compare several algorithms for a particular workload, and being able to more easily collect, correlate, and plot the output of multiple charts would be extremely useful.

As it is, I have to either parse the cargo bench output, scrape the HTML reports, or use the unstable machine-readable output - none of which are attractive options. Ideally I'd be able to grab the output of the benchmarks by, say, passing a custom function to criterion_main!().

Is this something the project is interested in supporting? I'd be happy to write up a pull request if so.

from criterion.rs.

lemmih avatar lemmih commented on May 17, 2024

It would be most welcome. Significant architectural changes are probably needed, though.

from criterion.rs.

theJasonFan avatar theJasonFan commented on May 17, 2024

Not sure how helpful this would be, but one workaround would be to do something like:
https://gist.github.com/theJasonFan/65fa3e514a7fe7b179412f41f7c7168b

And invoke bench_function(...) in a binary.

It's quite hacky though. Note that criterion expects to know all group and benchmark names before any benchmark is run to generate plots that compare performance. So running benchmarks this way and generating benchmark names programmatically via command line input might break things.

I think one could direct the output to a different directory with:

pub fn output_directory(mut self, path: &Path) -> Criterion<M> {
.

from criterion.rs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.