ruby-changes:51691
From: k0kubun <ko1@a...>
Date: Mon, 9 Jul 2018 03:08:31 +0900 (JST)
Subject: [ruby-changes:51691] k0kubun:r63903 (trunk): benchmark/README.md: [ci skip] write documentation
k0kubun 2018-07-09 03:08:26 +0900 (Mon, 09 Jul 2018) New Revision: 63903 https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=63903 Log: benchmark/README.md: [ci skip] write documentation about this directory benchmark/driver.rb: ditto Added files: trunk/benchmark/README.md Modified files: trunk/benchmark/driver.rb Index: benchmark/README.md =================================================================== --- benchmark/README.md (nonexistent) +++ benchmark/README.md (revision 63903) @@ -0,0 +1,49 @@ https://github.com/ruby/ruby/blob/trunk/benchmark/README.md#L1 +# ruby/benchmark + +This directory has benchmark definitions to be run with +[benchmark\_driver.gem](https://github.com/benchmark-driver/benchmark-driver). + +## Normal usage + +Execute `gem install benchmark-driver` and run a command like: + +```console +# Run a benchmark script with the ruby in the $PATH +benchmark-driver benchmark/erb_render.yml + +# Run all benchmark scripts with multiple Ruby executables or options +benchmark-driver benchmark/*.yml -e /path/to/ruby -e '/path/to/ruby,--jit' + +# Or compare Ruby versions managed by rbenv +benchmark-driver benchmark/*.yml --rbenv '2.5.1;2.6.0-preview2,--jit' +``` + +## make benchmark + +Using `make benchmark`, `make update-benchmark-driver` automatically downloads +the supported version of benchmark-driver, and it runs benchmarks with the downloaded +benchmark-driver. + +```console +# Run all benchmarks with the ruby in the $PATH and the built ruby +make benchmark + +# Or compare with specific ruby binary +make benchmark COMPARE_RUBY="/path/to/ruby --jit" + +# You can specify any option via $OPTS +make benchmark OPTS="--help" +``` + +## make benchmark-each + +`make benchmark-each` is similar to `make benchmark`, but it allows to execute +some specific benchmarks. + +```console +# Run vm1 benchmarks +make benchmark-each ITEM=vm1 + +# Match erb but exclude app_erb to run only erb_render +make benchmark-each ITEM=erb OPTS="--exclude=app_erb" +``` Index: benchmark/driver.rb =================================================================== --- benchmark/driver.rb (revision 63902) +++ benchmark/driver.rb (revision 63903) @@ -1,6 +1,6 @@ https://github.com/ruby/ruby/blob/trunk/benchmark/driver.rb#L1 #!/usr/bin/env ruby # -# Ruby Benchmark driver +# Wrapper of benchmark-driver command for `make benchmark` and `make benchmark-each`. # begin -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/