Futhark
Futhark is a purely functional data-parallel programming language. Its optimising compiler is able to compile it to typically very performant GPU code. The language and compiler is developed as part of the HIPERFIT project at DIKU. The project is still in its early phases, and the focus has mostly been on ensuring high runtime-performance, so the language still lacks certain niceties and features.
For more information, see the website.
Also see the compiler and language documentation and the basis library documentation.
Installation instructions here.
Statistics
Installation
Please see our installation instructions.
Usage
To compile a Futhark program to sequential C:
futhark-c prog.fut -o prog
Or maybe OpenCL:
futhark-opencl prog.fut -o prog
And then run it:
./prog < prog.input
To interpret a Futhark program:
futharki prog.fut < prog.input
Hacking
We try to make use of Github issues for organising our work. Issues tagged with newbie-friendly do not require deep knowledge of the code base.
Testing
Run the futhark-test tests
to check how well we're doing. Use
futhark-test -t
if you're in a hurry and only want to check that all
the tests compile.