Skip to content

Commit

Permalink
Small tweaks to README to make it work better as Markdown using: `pan…
Browse files Browse the repository at this point in the history
…doc -s --toc -f markdown -o README.html README`
  • Loading branch information
japhb committed May 16, 2013
1 parent 77647e8 commit 323bde2
Showing 1 changed file with 20 additions and 15 deletions.
35 changes: 20 additions & 15 deletions README
@@ -1,4 +1,6 @@
perl6-bench: Tools to benchmark and compare Perl family language implementations
% perl6-bench: Tools to benchmark and compare Perl family language implementations

<!--

TABLE OF CONTENTS
-----------------
Expand All @@ -7,6 +9,8 @@ TABLE OF CONTENTS
* BENCHMARKING TIPS
* PREREQUISITES

-->


QUICK START
-----------
Expand All @@ -27,11 +31,11 @@ compilers is as follows:
NETWORK TRAFFIC
---------------
perl6-bench tries to front-load as much of the network traffic as possible,
so that you can run "./bench setup" once on a fast network, then disconnect
so that you can run `./bench setup` once on a fast network, then disconnect
and do benchmarking to your heart's content without touching the network
again (unless you run "./bench fetch" to bring in new upstream commits).
again (unless you run `./bench fetch` to bring in new upstream commits).

During the setup process, 'bench' clones a bare mirror of the git repos of
During the setup process, `bench` clones a bare mirror of the git repos of
every component it knows about. After that, the extract command simply
makes local clones of these bare mirrors as needed, not touching the network
at all. Also, special care is taken during component builds so that components
Expand All @@ -41,7 +45,7 @@ build don't do so over the network, making fast local clones instead.
Thus, after setup you can build, benchmark, and analyze without touching the
network again. Eventually though you may want to grab the latest changes to
the component repos, e.g. to benchmark a new release when it comes out. You
can do this with "./bench fetch", which takes care to only update the bare
can do this with `./bench fetch`, which takes care to only update the bare
mirrors across the network -- not requiring nearly as much bandwidth as the
original setup since only new commits and tags are pulled -- and then update
all extracted checkouts locally from those mirrors.
Expand Down Expand Up @@ -78,33 +82,34 @@ You will need at least perl5 5.10.x, with the following modules installed:
Capture::Tiny
Data::Alias
DateTime
List::MoreUtils
JSON
JSON::XS (best) or JSON::PP (slower)
List::MoreUtils

You will need a Perl 6 compiler to run the 'bench' interface (though you can
benchmark the tests "manually" using the raw 'timeall' and 'analyze' Perl 5
You will need a Perl 6 compiler to run the `bench` interface (though you can
benchmark the tests "manually" using the raw `timeall` and `analyze` Perl 5
scripts in a pinch). The author generally uses bleeding-edge Rakudo, but any
Rakudo as of 2013.04 or later should do. Patches welcomed to make 'bench'
Rakudo as of 2013.04 or later should do. Patches welcomed to make `bench`
work well with other Perl 6 compilers.

Your Perl 6 compiler will need the following modules installed:

JSON::Tiny
Shell::Command

If you have panda installed, you should already have these, as they are
installed during the panda boostrap procedure.
If you have `panda` installed, you should already have these, as they are
installed during the `panda` boostrap procedure.

You may also need to have some extra items in your PATH, such as a recent
version of mono/mono-sgen for Niecza and node/d8 for Perlito*/JS. YMMV.
version of `mono`/`mono-sgen` for Niecza and `node`/`d8` for Perlito*/JS.
YMMV.

Paths to the proper working directory of compilers not yet handled by the
"./bench extract" mechanism can be set in the %COMPILERS hash at the top
of the 'timeall' script. The default directories are assumed to be created
`./bench extract` mechanism can be set in the %COMPILERS hash at the top
of the `timeall` script. The default directories are assumed to be created
by extract, or in parallel checkouts at the same directory level as the
perl6-bench checkout. For example, Perlito's directory is currently assumed
to be ../Perlito/ relative to the perl6-bench directory; eventually it will
to be `../Perlito/` relative to the perl6-bench directory; eventually it will
be clonable and extractable in the same way as nqp, niecza, and rakudo.

Compilers tested so far:
Expand Down

0 comments on commit 323bde2

Please sign in to comment.