Installation
Docker
- Build the docker image with the Dockerfile contained in the
docker
directory - Run the image
Local installation
- (tested on Fedora 22)
- Download and install Racket and optionally Larceny
- Clone the racr repo
- Install racr using
install-libraries.bash
- Let scheme IDE know about racr
- Racket: Create a symlink in
$RACKET_INSTALL_DIR/collects
pointing to$RACR_REPO/racr/racket-bin/racr
- Racket: Create a symlink in
- Install Fabric
- best installed using
pip install fabric
- best installed using
Using racr-mquat
- to build the project for Racket, use
make
(prefered if you changed the source files and want to recompile just the affected files)- alternatively use
fab install.racket
to unconditionally build everything for Racket
- alternatively use
- everything else is guided by fabric
- to list all possible commands, use
fab -l
- to get a description of a task, use
fab -d <TASKNAME>
Generell workflow for executing measurements
- Optional: check
ilp-measurements.scm
to contain the correct experiments to run (usually the case, if the file was not changed) - Run
fab properties.check
to see the current experiment settings - Optional: run
fab properties.setup
to change all properties orfab properties.setup:<NAME>
to change a specific property - Start the measurements with
fab measure.racket
(*) orfab measure.larceny
(*) using Racket or Larceny, respectively - Optional: run
fab measure.sol
(*) to run the solver- this uses
glpsol
and will fail, if it's not installed - this requires to run a measurement beforehand with the properties
measure.lp.write = 1
, i.e., some ILP files to operate on
- this uses
- Run
fab measure.conflate-results
to update the conflated result files - Run
fab measure.distinction-of-changes
to create result files split by strategy found in directoryprofiling/splitted
- Optional: Rerun notebook to update diagrams using
runipy ilp-measurement.ipynb
(*) For these tasks, there are variants with "-n" append taking as first parameter the number of repetitions