ALP User Documentation 0.7.alpha
Algebraic Programming User Documentation
|
▼Ngrb | The ALP/GraphBLAS namespace |
▼Nalgorithms | The namespace for ALP/GraphBLAS algorithms |
▼Npregel | The namespace for ALP/Pregel algorithms |
▼CConnectedComponents | A vertex-centric Connected Components algorithm |
CData | This vertex-centric Connected Components algorithm does not require any algorithm parameters |
▼CPageRank | A Pregel-style PageRank-like algorithm |
CData | The algorithm parameters |
▼Nconfig | Compile-time configuration constants as well as implementation details that are derived from such settings |
CBENCHMARKING | Benchmarking default configuration parameters |
CCACHE_LINE_SIZE | Contains information about the target architecture cache line size |
CIMPLEMENTATION< BSP1D > | This class collects configuration parameters that are specific to the grb::BSP1D and grb::hybrid backends |
CIMPLEMENTATION< reference > | This class collects configuration parameters that are specific to the grb::reference backend |
CIMPLEMENTATION< reference_omp > | This class collects configuration parameters that are specific to the grb::reference_omp backend |
CMEMORY | Memory configuration parameters |
CPREFETCHING | Default prefetching settings for reference and reference_omp backends |
CSIMD_SIZE | The SIMD size, in bytes |
Ndescriptors | Collection of standard descriptors |
▼Nidentities | Standard identities common to many operators |
Cinfinity | Standard identity for the minimum operator |
Clogical_false | Standard identitity for the logical or operator |
Clogical_true | Standard identity for the logical AND operator |
Cnegative_infinity | Standard identity for the maximum operator |
Cone | Standard identity for numerical multiplication |
Czero | Standard identity for numerical addition |
▼Ninterfaces | The namespace for programming APIs that automatically translate to ALP/GraphBLAS |
Nconfig | Contains configurations for programming models that are simulated on top of ALP/GraphBLAS |
CPregel | A Pregel run-time instance |
CPregelState | The state of the vertex-center Pregel program that the user may interface with |
▼Noperators | This namespace holds various standard operators such as grb::operators::add and grb::operators::mul |
Cabs_diff | This operator returns the absolute difference between two numbers |
Cadd | This operator takes the sum of the two input parameters and writes it to the output variable |
Cany_or | This operator is a generalisation of the logical or |
Cargmax | The argmax operator on key-value pairs |
Cargmin | The argmin operator on key-value pairs |
Cdivide | Numerical division of two numbers |
Cdivide_reverse | Reversed division of two numbers |
Cequal | Operator which returns true if its inputs compare equal, and false otherwise |
Cequal_first | Compares std::pair inputs taking the first entry in every pair as the comparison key, and returns true or false accordingly |
Cleft_assign | This operator discards all right-hand side input and simply copies the left-hand side input to the output variable |
Cleft_assign_if | This operator assigns the left-hand input if the right-hand input evaluates true |
Clogical_and | The logical and |
Clogical_or | The logical or |
Cmax | This operator takes the maximum of the two input parameters and writes the result to the output variable |
Cmin | This operator takes the minimum of the two input parameters and writes the result to the output variable |
Cmul | This operator multiplies the two input parameters and writes the result to the output variable |
Cnot_equal | Operator that returns false whenever its inputs compare equal, and true otherwise |
Crelu | This operation is equivalent to grb::operators::min |
Cright_assign | This operator discards all left-hand side input and simply copies the right-hand side input to the output variable |
Cright_assign_if | This operator assigns the right-hand input if the left-hand input evaluates true |
Csquare_diff | This operation returns the squared difference between two numbers |
Csubtract | Numerical substraction of two numbers |
Czip | The zip operator that operators on keys as a left-hand input and values as a right hand input, producing a key-value std::pair |
CBenchmarker | A class that follows the API of the grb::Launcher, but instead of launching the given ALP program once, it launches it multiple times while benchmarking its execution times |
Ccollectives | A static class defining various collective operations on scalars |
Chas_immutable_nonzeroes | Used to inspect whether a given semiring has immutable nonzeroes under addition |
Cis_associative | Used to inspect whether a given operator or monoid is associative |
Cis_commutative | Used to inspect whether a given operator or monoid is commutative |
Cis_container | Used to inspect whether a given type is an ALP/GraphBLAS container |
Cis_idempotent | Used to inspect whether a given operator or monoid is idempotent |
Cis_monoid | Used to inspect whether a given type is an ALP monoid |
Cis_object | Used to inspect whether a given type is an ALP/GraphBLAS object |
Cis_operator | Used to inspect whether a given type is an ALP operator |
Cis_semiring | Used to inspect whether a given type is an ALP semiring |
CLauncher | A group of user processes that together execute ALP programs |
▼CMatrix | An ALP/GraphBLAS matrix |
Cconst_iterator | A standard iterator for an ALP/GraphBLAS matrix |
CMonoid | A generalised monoid |
CPinnedVector | Provides a mechanism to access ALP containers from outside of an ALP context |
CSemiring | A generalised semiring |
Cspmd | For backends that support multiple user processes this class defines some basic primitives to support SPMD programming |
▼CVector | A GraphBLAS vector |
Cconst_iterator | A standard iterator for the Vector< D > class |