DIY 3.0 data-parallel out-of-core C++ library

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Examples

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Functions Typedefs Groups Pages
Public Types | Public Member Functions | List of all members
diy::RegularSwapPartners Struct Reference
Communication

Partners for swap-reduce. More...

`#include <diy/partners/swap.hpp>`

Inheritance diagram for diy::RegularSwapPartners:

## Public Types
typedef RegularPartners | Parent
Public Types inherited from diy::RegularPartners
typedef std::vector< int > | CoordVector
typedef std::vector< int > | DivisionVector
typedef std::vector< DimK > | KVSVector
typedef DiscreteBounds | Bounds
typedef RegularDecomposer< Bounds > | Decomposer

## Public Member Functions
template<class Decomposer >
| RegularSwapPartners (const Decomposer &decomposer, int k, bool contiguous=true)
| RegularSwapPartners (const DivisionVector &divs, const KVSVector &kvs, bool contiguous=true)
bool | active (int, int, const Master &) const
void | incoming (int round, int gid, std::vector< int > &partners, const Master &) const
void | outgoing (int round, int gid, std::vector< int > &partners, const Master &) const
Public Member Functions inherited from diy::RegularPartners
template<class Decomposer_ >
| RegularPartners (const Decomposer_ &decomposer, int k, bool contiguous=true)
| RegularPartners (const DivisionVector &divs, const KVSVector &kvs, bool contiguous=true)
size_t | rounds () const
int | size (int round) const
int | dim (int round) const
int | step (int round) const
const DivisionVector & | divisions () const
const KVSVector & | kvs () const
bool | contiguous () const
void | fill (int round, int gid, std::vector< int > &partners) const
int | group_position (int round, int c, int step) const

## Additional Inherited Members
Static Public Member Functions inherited from diy::RegularPartners
static void | factor (int k, const DivisionVector &divisions, KVSVector &kvs)

## Detailed Description

Partners for swap-reduce.

Examples:
  reduce/sort.cpp, and reduce/swap-reduce.cpp.

## Constructor & Destructor Documentation

template<class Decomposer >

diy::RegularSwapPartners::RegularSwapPartners | ( | const Decomposer & | decomposer,
|  | int | k,
|  | bool | contiguous = `true`
| ) |  |
| inline

Parameters

  decomposer | domain decomposition
  k | target k value
  contiguous | distance halving (true) or doubling (false)

diy::RegularSwapPartners::RegularSwapPartners | ( | const DivisionVector & | divs,
|  | const KVSVector & | kvs,
|  | bool | contiguous = `true`
| ) |  |
| inline

Parameters

  divs | explicit division vector
  kvs | explicit k vector
  contiguous | distance halving (true) or doubling (false)

The documentation for this struct was generated from the following file:

- include/diy/partners/swap.hpp