Main libraries
- lib/github.com/diku-dk/containers/array/array
Functions on pure arrays.
- lib/github.com/diku-dk/containers/array/reduction_tree
A collection of common binary reduction tree.
- lib/github.com/diku-dk/containers/array/transparent_reduction_tree
An implementation of binary reduction tree.
- lib/github.com/diku-dk/containers/core/hash
Internal library used for universal hashing.
- lib/github.com/diku-dk/containers/core/hashkey
A module type for keys that can be hashed.
- lib/github.com/diku-dk/containers/core/key
Definitions of modules that implement both the
hashkeyandordkeymodule types for a variety of types.- lib/github.com/diku-dk/containers/core/opt
A module for working with optional values.
- lib/github.com/diku-dk/containers/core/ordkey
Ordered key type.
- lib/github.com/diku-dk/containers/core/slice
Types representing slices of arrays.
- lib/github.com/diku-dk/containers/map/arraymap
Array-based key-value maps.
- lib/github.com/diku-dk/containers/map/eytzinger
Eytzinger tree-based key-value maps.
- lib/github.com/diku-dk/containers/map/hashmap
Static hashmaps.
- lib/github.com/diku-dk/containers/map/map
Abstract interface for working with key-value mappings.
- lib/github.com/diku-dk/containers/pointer/list
Linked lists.
- lib/github.com/diku-dk/containers/set/bitset
Bitset module
- lib/github.com/diku-dk/containers/set/hashset
Static hashsets with an unlifted type.
- lib/github.com/diku-dk/containers/set/set
Abstract interface for working with sets.
- lib/github.com/diku-dk/containers/set/setops
Set-like operations on arrays of values interpreted as sets
- lib/github.com/diku-dk/containers/set/unionfind
Module containing different implementations of union-find.
- lib/github.com/diku-dk/containers/stream/bloom_filter
Implementation of a Bloom filter.
- lib/github.com/diku-dk/containers/stream/count_min_sketch
Implementation of the Count-Min Sketch streaming algorithm.
- lib/github.com/diku-dk/containers/stream/hyperloglog
Implementations of HyperLogLog and HyperLogLog++
- lib/github.com/diku-dk/containers/tree/euler_tour
Construction of Euler Tours.
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.
- lib/github.com/diku-dk/cpprandom/random
Random number generation inspired by
<random>in C++.- lib/github.com/diku-dk/segmented/segmented
Irregular segmented operations, like scans and reductions.
- lib/github.com/diku-dk/sorts/merge_sort
Work-efficient parallel mergesort
- lib/github.com/diku-dk/sorts/radix_sort
A non-comparison-based sort that sorts an array in O(k n) work and O(k log(n)) span, where k is the number of bits in each element.