Code Monkey home page Code Monkey logo

async-benchmark-runner's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

async-benchmark-runner's Issues

Eliminate hard coded config and need for calibration

Currently opsPerSample and numSamples are hard coded values. Also, the calibration sections of the documentation are confusing.

A less confusing set of options would be

  • minCyclesPerSample
  • maxCyclesPerSample
  • minTimePerSample
  • maxTimePerSample

This set of options would allow ABR to automatically choose the correct numbers of ops per sample in a way that allowed the benchmark to run in the minimum amount of time required to produce stable results.

Additionally adding

  • minSamples
  • maxSamples
  • target-variance

Would allow ABR to automatically determine the best numSamples, again using the minimum amount of runtime to achieve stable results.

Maybe.

The benefit being that these would be global benchmark options and would not require per-benchmark configuration.

CLI does not work on Linux

ABR Relies on the --expose-gc option in the shebang definition in its cli entry point. This does not work on Linus. A similar issue occurred and was solved when the --harmony flag was in use. A similar solution can probably be used, which was wrapping the cli in a shell script.

See node-harmony-wrapper

Interleave samples from different benchmarks

I believe this will make the results more stable with fewer samples and reduce the need for confusing calibration and jitter calming.

Its also a complete re-write of the benchmark scheduling. Which is ok because the chain of callbacks is hard to understand anyway and mostly an artifact of earlier iterations that aren't relevant any more.

Double check for memory leaks

It should be possible to run a benchmark for an infinite amount of time. Look for leaks in the benchmark scheduling and running process that might prevent that.

Use mode instead of mean to describe memory usage

Mean is the wrong statistic. What does it mean to say something used a fractional number of bytes? Switching to mode allows the Margin of Error to also be removed, cleaning up and simplifying the reports.

--debug-gc option should not require manual addition of --trace_gc option

Currently ABR cannot add the --trace_gc option during run-benchmark. To use this feature, you must edit the file directly adding the option to the shebang line for the script. Options on the shebang line are known to not be supoorted in Linux. Future ABR version will use a shell script instead of a node script to launch benchmarks to eliminate this issue.

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.