yashLadha / node-microbenchmark

Micro benchmarking library for Node.JS πŸš€

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

node-microbenchmark

npm version

A micro benchmarking library inspired from google-benchmark

Features available:

  • Benchmarking synchronous functions
  • Benchmarking of asynchronous functions
    • Support for Promises
  • High precision benchmark (upto nanoseconds precision)

Benchmarking of synchronous functions

const { benchmark, show } = require('node-microbenchmark');

const slowFn = () => {
    for (var i = 0; i < 1e4; ++i);
}

const fastFn = () => {}

benchmark(slowFn);
benchmark(fastFn);

show();

Benchmarking of asynchronous functions

const benchmark = require('../index');

const slowTimer = () => new Promise(res => setTimeout(res, 200));
const fastTimer = () => new Promise(res => setTimeout(res, 50));

const fn = async () => {
  await benchmark.benchmarkPromise(slowTimer);
  await benchmark.benchmarkPromise(fastTimer);
  benchmark.show();
};

fn();

node-microbenchmark

Future enhancements

  • Benchmark async code like promises.

Author

About

Micro benchmarking library for Node.JS πŸš€

License:MIT License


Languages

Language:JavaScript 100.0%