The source code for Profiled-Guided Meta-Programming (PLDI 2015)
Racket TeX Scheme Makefile
Switch branches/tags
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
paper
presentations
rackpgmp
scheme
LICENSE
Makefile
README.md

README.md

pgmp

Source code for Profile-Guided Meta-Programming, PLDI 2015.

Installing

All Racket code runs under Racket 6.1.1, on Linux, Mac, and Windows.

To install the Racket package, run

raco pkg install rackpgmp

Quick Start

Add (require pgmp) to your module, and use the provided API to make compile-time decisions using profile information.

To profile a module which uses a profile-guided meta-program:

raco pgmp --profile example.rkt

This will profile the code and generate example.rkt.profile.

To optimize and rerun the module:

> racket -t example.rkt

For more information, run raco docs pgmp, raco docs perflinty, and see examples.

Test and micro-benchmarks

To run the test and micro-benchmark suite:

make test

See tests for the test and micro-benchmark suite.