|
Galois
|
Contains macros for easily defining common Galois sync structures and the field flags class used for on-demand synchronization. More...
#include <cstdint>#include <galois/AtomicHelpers.h>#include <galois/runtime/DataCommMode.h>#include <galois/gIO.h>Go to the source code of this file.
Classes | |
| class | galois::runtime::FieldFlags |
| Each field has a FieldFlags object that indicates synchronization status of that field. More... | |
Namespaces | |
| galois | |
| The Galois namespace containing all Galois structures and functions. | |
| galois::runtime | |
| Internal Galois functionality - Use at your own risk. | |
Macros | |
| #define | GALOIS_SYNC_STRUCTURE_ADD_EDGES(fieldtype) |
| #define | GALOIS_SYNC_STRUCTURE_BITSET_EDGES |
| Sync structure for dynamic bitsets, edges. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_ADD(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a sum reduction. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_ADD_ARRAY(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a sum reduction on a field that is represented by an array. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_SET(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a set as a reduction. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_SET_ARRAY(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a set as a reduction on a field represented by an array. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_MIN(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a min reduction. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_MAX(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a max reduction. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_MIN_ARRAY(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a pairwise min reduction on an array. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_PAIR_WISE_AVG_ARRAY(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a pairwise average on an array. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_PAIR_WISE_ADD_ARRAY(fieldname, fieldtype) |
| Creates a Galois reduction sync structure that does a pairwise sum reduction on an array. More... | |
| #define | GALOIS_SYNC_STRUCTURE_REDUCE_PAIR_WISE_ADD_ARRAY_SINGLE(fieldname,fieldtype) |
| Creates a Galois reduction sync structure that does a pairwise sum reduction on an array on a SINGLE element. More... | |
| #define | GALOIS_SYNC_STRUCTURE_BITSET(fieldname) |
| Sync structure for dynamic bitsets. More... | |
| #define | GALOIS_SYNC_STRUCTURE_VECTOR_BITSET(fieldname) |
| Sync structure for a vector of dynamic bitsets. More... | |
Enumerations | |
| enum | galois::runtime::BITVECTOR_STATUS { galois::runtime::NONE_INVALID, galois::runtime::SRC_INVALID, galois::runtime::DST_INVALID, galois::runtime::BOTH_INVALID } |
| Bitvector status enum specifying validness of certain things in bitvector. More... | |
Functions | |
| bool | galois::runtime::src_invalid (BITVECTOR_STATUS bv_flag) |
| Return true if the sources are invalid in bitvector flag. More... | |
| bool | galois::runtime::dst_invalid (BITVECTOR_STATUS bv_flag) |
| Return true if the destinations are invalid in bitvector flag. More... | |
| void | galois::runtime::make_src_invalid (BITVECTOR_STATUS *bv_flag) |
| Marks sources invalid on passed in bitvector flag. More... | |
| void | galois::runtime::make_dst_invalid (BITVECTOR_STATUS *bv_flag) |
| Marks destinations invalid on passed in bitvector flag. More... | |
Contains macros for easily defining common Galois sync structures and the field flags class used for on-demand synchronization.
| #define GALOIS_SYNC_STRUCTURE_ADD_EDGES | ( | fieldtype | ) |
| #define GALOIS_SYNC_STRUCTURE_BITSET | ( | fieldname | ) |
Sync structure for dynamic bitsets.
Bitsets are expected to have the following naming scheme: bitset_<fieldname>
In addition, you will have to declare and appropriately resize the bitset in your main program as well as set the bitset appropriately (i.e. when you do a write to a particular node).
| #define GALOIS_SYNC_STRUCTURE_BITSET_EDGES |
Sync structure for dynamic bitsets, edges.
Bitsets are expected to have the following naming scheme: bitset_edges
In addition, you will have to declare and appropriately resize the bitset in your main program as well as set the bitset appropriately (i.e. when you do a write to a particular node).
| #define GALOIS_SYNC_STRUCTURE_REDUCE_ADD | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a sum reduction.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_ADD_ARRAY | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a sum reduction on a field that is represented by an array.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_MAX | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a max reduction.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_MIN | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a min reduction.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_MIN_ARRAY | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a pairwise min reduction on an array.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_PAIR_WISE_ADD_ARRAY | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a pairwise sum reduction on an array.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_PAIR_WISE_ADD_ARRAY_SINGLE | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a pairwise sum reduction on an array on a SINGLE element.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_PAIR_WISE_AVG_ARRAY | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a pairwise average on an array.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_SET | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a set as a reduction.
| #define GALOIS_SYNC_STRUCTURE_REDUCE_SET_ARRAY | ( | fieldname, | |
| fieldtype | |||
| ) |
Creates a Galois reduction sync structure that does a set as a reduction on a field represented by an array.
| #define GALOIS_SYNC_STRUCTURE_VECTOR_BITSET | ( | fieldname | ) |
Sync structure for a vector of dynamic bitsets.
Function signatures allow indexing into this vector to get the correct bitset
Bitsets are expected to have the following naming scheme: bitset_<fieldname>
In addition, you will have to declare and appropriately resize the bitset in your main program as well as set the bitset appropriately (i.e. when you do a write to a particular node).