Skip to content

brianc/bencher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Really easy to use benchmarking utility for async code execution in node.js. Currently not a lot handled for you other than executing your code x number of times and providing the time it took to do so. Used for benchmarks in node-postgres.

Example

var bencher = require('path/to/bencher/lib/folder');
var bench = bencher({
  name: 'my benchmark',
  repeat: 100,
  actions:[{
    name: 'first action',
    run: function(next) {
      //do something
      setTimeout(function() {
        //call next when you're done
        next()
      }, 100)
    }
  },{
    name: 'second action',
    run: function(next) {
      //do something...
      //call next when you're done
      next()
    }
  }]
})

bench(function(result) {
  result.actions.forEach(function(action) {
    console.log(aciton.name);
    action.repeats.forEach(function(repeat) {
      console.log(repeat.start) // -- date object
      console.log(repeat.end)  // -- date object
    })
  })
})

TODO

  • better documentation
  • provide summary and helper info for average runtimes
  • how to bench things which take less than a milisecond?

About

node.js benchmarking & performance analysis utilities

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published