README.md in benchmark_driver-0.10.12 vs README.md in benchmark_driver-0.10.13

- old
+ new

@@ -1,32 +1,26 @@ # BenchmarkDriver [![Build Status](https://travis-ci.org/k0kubun/benchmark_driver.svg?branch=master)](https://travis-ci.org/k0kubun/benchmark_driver) Fully-featured accurate benchmark driver for Ruby -## Project Status - -Beta. - -Interface might be changed in the future, but it's almost fixed and many features can run well. - ## Features ### Accurate Measurement - Low overhead benchmark by running generated script instead of calling Proc -- Profiling memory, high-precision real time, user time and system time +- Profiling memory and high-precision real time - Running multiple times to minimize measurement errors ### Pluggable & Fully Featured -- Flexible and real-time output format in ips, execution time, markdown table, etc. -- Benchmark with various running options +- Flexible and real-time output format in comparison, markdown table, graph, etc. +- Measuring various metrics by specifying runners - Integrated benchmark support using external libraries - Runner and output format are all pluggable ### Flexible Interface -- Ruby interface similar to benchmark stdlib, benchmark-ips +- Ruby interface similar to stdlib benchmark.rb, benchmark-ips - YAML input to easily manage structured benchmark set - Comparing multiple Ruby binaries, even with miniruby ## Installation @@ -147,9 +141,30 @@ 2.4.1: 2660777.4 i/s - 1.08x slower str-interp 2.5.0: 3258489.7 i/s 2.4.1: 1889805.6 i/s - 1.72x slower +``` + +## Output options + +By default, there are following output options. + +* compare: benchmark-ips's `compare!`-like output (default) +* simple: ruby's original `benchmark/driver.rb`-like simple output +* markdown: output in markdown table +* record: serialize results in `benchmark_driver.record.yml`, to change outputs later as you like + +With `benchmark-driver` CLI, you can specify it with `-o [output]` or `--output [output]`. + +With Ruby interface, you can specify it like: + +```rb +Benchmark.driver do |x| + x.prelude %{ array = [] } + x.report 'Array#empty?', %{ array.empty? } + x.output 'markdown' +end ``` ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/k0kubun/benchmark_driver.