pegjs/benchmark
David Majda 959f20f6e2 Pass benchmark code through Babel before serving it to the browser
This will allow to use ES2015 constructs in benchmark code.

The change required introducing a small server, which serves both PEG.js
and benchmark code passed through Babel and bundled together. This
allowed to convert the benchmark to regular modules and to get rid of
the hackery that was previously needed to make it run both in Node.js
and in the browser.

Note the benchmark no longer exercises the browser version.

See #442.
2016-09-08 14:53:12 +02:00
..
css Added a benchmark suite. 2010-03-29 20:18:54 +02:00
json Added a benchmark suite. 2010-03-29 20:18:54 +02:00
vendor Use jQuery.scrollTo 2.1.2 2016-08-02 16:36:29 +02:00
.eslintrc.json Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
benchmarks.js Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
index.css Code generator rewrite 2013-01-01 16:38:09 +01:00
index.html Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
index.js Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
README.md Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
run Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
runner.js Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00
server Pass benchmark code through Babel before serving it to the browser 2016-09-08 14:53:12 +02:00

PEG.js Benchmark Suite

This is the PEG.js benchmark suite. It measures speed of the parsers generated by PEG.js on various inputs. Its main goal is to provide data for code generator optimizations.

Running in Node.js

All commands in the following steps need to be executed in PEG.js root directory (one level up from this one).

  1. Install all PEG.js dependencies, including development ones:

    $ npm install
    
  2. Execute the benchmark suite:

    $ make spec
    
  3. Wait for results.

Running in the Browser

All commands in the following steps need to be executed in PEG.js root directory (one level up from this one).

  1. Make sure you have Node.js installed.

  2. Install all PEG.js dependencies, including development ones:

    $ npm install
    
  3. Serve the benchmark suite using a web server:

    $ benchmark/server
    
  4. Point your browser to the benchmark suite.

  5. Click the Run button and wait for results.