Benchmarks are in benchmarks, demos in demos.
To run these programs you must have:
-
the Futhark compiler
futhark-openclmust be in your$PATH, -
the Tail-to-Futhark compiler
tail2futharkmust be in you$PATHFor example, after cloning the repository you can install it by $ stack setup $ stack install -
a working OpenCL setup.
-
gawk (a version that supports the
strtonumfunction) -
matplotlib
You will need a *nix-like system. OpenCL execution will by
default use the first detected platform and device. You can edit the
Makefile to select a different platform and device.
The benchmark system is built using make (sorry). Ideally, you just
run make and it will build and run all benchmarks. The result will
be a speedup graph in a file called plot.pdf, and a runtime table in
a file table.tex. There will also be a directory called runtimes/
that contains files with runtime measurements (in miliseconds).
Of course, many things can go wrong. You may need to modify the
Makefile to fix include paths and the like to fit your system.
If you are on a 64-bit system, then you are adviced to compile
apltail with MLton, not MLKit.
You must set the TAIL_ROOT environment variable to point at a local
clone of the apltail repository.
This is so aplt can find the TAIL prelude.