-
Notifications
You must be signed in to change notification settings - Fork 0
ellerh/igc-benchmarks
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This directory contains some benchmarks for the feature/igc branch. There are three directories: elisp scripts emacses The elisp directory contains the benchmark programs. The scripts directory contains various scripts to execute the benchmarks and to report the results. The emacses directory contains symbolic links or scripts for various Emacs configurations. Setting up symbolic links ========================= The scripts assume that the emacses directory contains the Emacs configurations to use for the benchmarks. For example, to use an Emacs built from the feature/igc branch and one from the master branch you should do something like: cd emacses ln -s /path/to/feature/igc/src/emacs igc ln -s /path/to/master/src/emacs master Running benchmarks ================== Benchmarks can be executed in the scripts directory like so: cd scripts bash run-benchmarks.sh igc Here igc is one of the files in the emacses directory. This should print something like: igc,scroll,18.40,10.17,0.09,66920 igc,boehm-gc,5.98,5.65,0.31,201616 igc,hash-equal,8.73,7.83,0.85,196576 ... The results are also saved in the file results.csv. The -b option can be used to select a single or a few benchmarks. For example: bash run-benchmarks.sh -b boehm-gc -b primes igc executes the boehm-gc and primes benchmarks. Saving results in a database ============================ To compare the results of different Emacs configurations, the results should be stored in a Sqlite database. An empty database can be created with: cd scripts bash create-results-db.sh This creates a file results.sqlite. The results that run-benchmarks.sh stores in the file results.csv can then be imported into the database with: bash csv-import.sh Reports ======= The report.sh script can be used to create various reports from the results in the database. E.g. bash report.sh b/e real produces output like: boehm-gc compile hash-eq pidigits primes print scroll string igc 5.98 26.31 2.78 1.14 5.07 3.67 18.40 1.11 master 17.78 35.85 2.72 0.39 13.54 2.27 23.33 1.22 master-1.0 4.44 28.89 1.30 0.35 5.39 1.97 17.99 0.81 master-1.5 3.99 28.16 1.04 0.35 4.35 1.87 17.85 0.45 The command bash report.sh plot-rel master-1.0 real can be used the create a bar diagram for the results. The plot is created by Python code in scripts/bardiagram.py and requires the matplotlib. Of course, you can use your own queries by using sqlite3 results.sqlite
About
Benchmarks for the igc branch
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published