Main libraries

lib/github.com/diku-dk/cpprandom/random

Random number generation inspired by <random> in C++.

lib/github.com/diku-dk/cpprandom/romu

A collection of rng_engine modules that implement the Romu family of random number generators by Mark Overton. While the Romu generators are mostly fast on out-of-order CPUs because they can be "zero latency" by fitting into otherwise unused execution slots, they may also be useful on GPU. In particular, the 32-bit variants run very fast.

lib/github.com/diku-dk/cpprandom/shuffle

Random shuffling of an array in parallel.

Supporting libraries

/prelude/ad

Definitions related to automatic differentiation.

/prelude/array

Utility functions for arrays.

/prelude/functional

Simple functional combinators.

/prelude/math

Basic mathematical modules and functions.

/prelude/prelude

The default prelude that is implicitly available in all Futhark files.

/prelude/soacs

Various Second-Order Array Combinators that are operationally parallel in a way that can be exploited by the compiler.

/prelude/zip

Transforming arrays of tuples into tuples of arrays and back again.