Flamingo is a general-purpose auto-tuning framework for software
The software automates the process of finding optimal settings
for program parameters, even reducing the number of tests
These parameters would typically control how a program performs,
for example the sub-problem size a large problem is broken down
— Provides a straightforward introduction to the
tuner and what it can do.
— A more detailed description of each of the tuner's
— Brief introduction to how the tuner is designed and
Several small example programs are included.
Flamingo is open source software, released under the
2-Clause Licence. The latest version is available for download
here, including the documentation and example programs:
Extract this tarball into your home directory and run
~/Autotuning/autotune for a demonstration.
Flamingo began as my third year undergraduate project at university,
supervised by Mike
My project report is available
here and contains lots
of technical detail on the design of the original system
(refers to v0.11).
The project was developed as part of ongoing work on
and has been partially funded by an
EPSRC vacation bursary.