Galois
|
#include <tuple>
#include <type_traits>
#include "galois/config.h"
#include "galois/worklists/WorkList.h"
Go to the source code of this file.
Classes | |
struct | galois::trait_has_type< T > |
struct | galois::trait_has_value< T > |
struct | galois::trait_has_svalue< T, V > |
struct | galois::get_trait_type< T, Tuple > |
Returns the type associated with the given trait in a tuple. More... | |
struct | galois::function_traits< T, Enable > |
struct | galois::function_traits< T, typename std::enable_if< has_function_traits< T >(0)>::type > |
struct | galois::loopname_tag |
Indicate name to appear in statistics. More... | |
struct | galois::loopname |
struct | galois::steal_tag |
Indicate whetherlink do_all()} loops should perform work-stealing. More... | |
struct | galois::steal |
struct | galois::wl_tag |
Indicates worklist to use. More... | |
struct | galois::s_wl< T, Args > |
struct | galois::parallel_break_tag |
Indicates the operator may request the parallel loop to be suspended and a given function run in serial. More... | |
struct | galois::parallel_break |
struct | galois::no_pushes_tag |
Indicates the operator does not generate new work and push it on the worklist. More... | |
struct | galois::no_pushes |
struct | galois::per_iter_alloc_tag |
Indicates the operator may request the access to a per-iteration allocator. More... | |
struct | galois::per_iter_alloc |
struct | galois::no_stats_tag |
Indicates the operator doesn't need its execution stats recorded. More... | |
struct | galois::no_stats |
struct | galois::more_stats_tag |
Indicates the operator needs detailed stats Must provide loopname to enable this flag. More... | |
struct | galois::more_stats |
struct | galois::no_conflicts_tag |
Indicates the operator doesn't need abort support. More... | |
struct | galois::no_conflicts |
struct | galois::fixed_neighborhood_tag |
Indicates that the neighborhood set does not change through out i.e. More... | |
struct | galois::fixed_neighborhood |
struct | galois::intent_to_read_tag |
Indicates that the operator uses the intent to read flag. More... | |
struct | galois::intent_to_read |
struct | galois::neighborhood_visitor_tag |
Indicates the operator has a function that visits the neighborhood of the operator without modifying it. More... | |
struct | galois::neighborhood_visitor< T > |
struct | galois::det_parallel_break_tag |
Indicates the operator has a function that allows a galois::for_each loop to be exited deterministically. More... | |
struct | galois::det_parallel_break< T > |
struct | galois::det_id_tag |
Indicates the operator has a function that optimizes the generation of unique ids for active elements. More... | |
struct | galois::det_id< T > |
struct | galois::local_state_tag |
Indicates the operator has a type that encapsulates state that is passed between the suspension and resumpsion of an operator during deterministic scheduling. More... | |
struct | galois::local_state< T > |
struct | galois::op_tag |
For distributed Galois. More... | |
struct | galois::chunk_size_tag |
struct | galois::chunk_size< SZ > |
Specify chunk size for do_all_coupled & do_all_choice at compile time or at runtime. More... | |
Namespaces | |
galois | |
The Galois namespace containing all Galois structures and functions. | |
Functions | |
template<template< typename...> class TT, typename... Args> | |
auto | galois::make_trait_with_args (Args...args) -> TT< Args...> |
Utility function to simplify creating traits that take unnamed functions (i.e., lambdas). More... | |
template<typename T , typename Tuple , size_t Int, size_t... Ints> | |
constexpr size_t | galois::find_trait (std::index_sequence< Int, Ints...>) |
Returns index of first matching trait in Tuple. More... | |
template<typename T , typename Tuple > | |
constexpr size_t | galois::find_trait () |
template<typename T , typename... Ts> | |
constexpr bool | galois::has_trait (std::tuple< Ts...> *) |
Returns true if the tuple type contains the given trait T. More... | |
template<typename T , typename Tuple > | |
constexpr bool | galois::has_trait () |
template<typename T , typename Tuple > | |
constexpr auto | galois::get_trait_value (Tuple tpl) |
Returns the value associated with the given trait T in a tuple. More... | |
template<typename S , typename T , typename D > | |
constexpr auto | galois::get_default_trait_value (S, T, D, typename std::enable_if< has_trait< T, S >()>::type *=nullptr) |
template<typename S , typename T , typename D > | |
constexpr auto | galois::get_default_trait_value (S GALOIS_UNUSED(source), T GALOIS_UNUSED(tags), D defaults, typename std::enable_if<!has_trait< T, S >()>::type *=nullptr) |
template<typename S , typename T , typename D > | |
constexpr auto | galois::get_default_trait_values (std::index_sequence<> GALOIS_UNUSED(seq), S GALOIS_UNUSED(source), T GALOIS_UNUSED(tags), D GALOIS_UNUSED(defaults)) |
Returns a tuple that has an element from defaults[i] for every type from tags[i] missing in source. More... | |
template<size_t... Ints, typename S , typename T , typename D > | |
constexpr auto | galois::get_default_trait_values (std::index_sequence< Ints...> GALOIS_UNUSED(seq), S source, T tags, D defaults) |
template<typename S , typename T , typename D > | |
constexpr auto | galois::get_default_trait_values (S source, T tags, D defaults) |
template<typename T > | |
constexpr auto | galois::has_function_traits (int) -> decltype(std::declval< typename T::function_traits >(), bool()) |
template<typename > | |
constexpr auto | galois::has_function_traits (...) -> bool |
Variables | |
template<typename Base , typename Derived > | |
constexpr bool | galois::at_least_base_of |
True if Derived is derived from Base or is Base itself. More... | |
typedef worklists::PerSocketChunkFIFO < chunk_size<>::value > | galois::defaultWL |
template<typename T , typename... Args> | |
s_wl< T, Args...> | galois::wl (Args &&...args) |