SplittablesBase: a simple API for parallel computation on collections
January 17, 2021 ยท View on GitHub
SplittablesBase.jl defines a simple set of APIs:
halve(collection): splitting givencollectionroughly in half.amount(collection): an "approximation" oflength.
These are the basis of parallel algorithms that can be derived from
reduce. Custom containers can support many parallel algorithms by
simply defining these functions.
SplittablesTesting.jl
provides simple test utility functions
SplittablesTesting.test_ordered(examples) and
SplittablesTesting.test_unordered(examples) that run some
automatable tests with each example container in examples.
See more in the documentation.
Supported collections
halve methods for following collections in Base are implemented in
SplittablesBase.jl:
AbstractArrayAbstractStringDictkeys(::Dict)values(::Dict)SetTupleNamedTuplezippairsBase.GeneratorIterators.filterIterators.flattenIterators.partitionIterators.productIterators.enumerateIterators.reverseskipmissing