TiledArray  0.7.0
TiledArray::detail::BlockedPmap Class Reference

A blocked process map. More...

#include <blocked_pmap.h>

Inheritance diagram for TiledArray::detail::BlockedPmap:
Collaboration diagram for TiledArray::detail::BlockedPmap:

Public Types

typedef Pmap::size_type size_type
 Key type. More...
 
- Public Types inherited from TiledArray::Pmap
typedef std::size_t size_type
 Size type. More...
 
typedef std::vector< size_type >::const_iterator const_iterator
 Iterator type. More...
 

Public Member Functions

 BlockedPmap (World &world, size_type size)
 Construct Blocked map. More...
 
virtual ~BlockedPmap ()
 
virtual size_type owner (const size_type tile) const
 Maps tile to the processor that owns it. More...
 
virtual bool is_local (const size_type tile) const
 Check that the tile is owned by this process. More...
 
- Public Member Functions inherited from TiledArray::Pmap
 Pmap (World &world, const size_type size)
 Process map constructor. More...
 
virtual ~Pmap ()
 
size_type size () const
 Size accessor. More...
 
size_type rank () const
 Process rank accessor. More...
 
size_type procs () const
 Process count accessor. More...
 
size_type local_size () const
 Local size accessor. More...
 
bool empty () const
 Check if there are any local elements. More...
 
virtual bool is_replicated () const
 Replicated array status. More...
 
const_iterator begin () const
 Begin local element iterator. More...
 
const_iterator end () const
 End local element iterator. More...
 

Protected Attributes

const size_type rank_
 The rank of this process. More...
 
const size_type procs_
 < The rank of this process More...
 
const size_type size_
 < The number of processes More...
 
std::vector< size_typelocal_
 < The number of tiles mapped among all processes More...
 
- Protected Attributes inherited from TiledArray::Pmap
const size_type rank_
 The rank of this process. More...
 
const size_type procs_
 The number of processes. More...
 
const size_type size_
 The number of tiles mapped among all processes. More...
 
std::vector< size_typelocal_
 A list of local tiles. More...
 

Detailed Description

A blocked process map.

Map N elements among P processes into blocks that are approximately N/P elements in size. A minimum block size may also be specified.

Definition at line 38 of file blocked_pmap.h.

Member Typedef Documentation

◆ size_type

Key type.

Definition at line 57 of file blocked_pmap.h.

Constructor & Destructor Documentation

◆ BlockedPmap()

TiledArray::detail::BlockedPmap::BlockedPmap ( World &  world,
size_type  size 
)
inline

Construct Blocked map.

Parameters
worldThe world where the tiles will be mapped
sizeThe number of tiles to be mapped

Definition at line 63 of file blocked_pmap.h.

Here is the call graph for this function:

◆ ~BlockedPmap()

virtual TiledArray::detail::BlockedPmap::~BlockedPmap ( )
inlinevirtual

Definition at line 82 of file blocked_pmap.h.

Member Function Documentation

◆ is_local()

virtual bool TiledArray::detail::BlockedPmap::is_local ( const size_type  tile) const
inlinevirtual

Check that the tile is owned by this process.

Parameters
tileThe tile to be checked
Returns
true if tile is owned by this process, otherwise false .

Implements TiledArray::Pmap.

Definition at line 100 of file blocked_pmap.h.

◆ owner()

virtual size_type TiledArray::detail::BlockedPmap::owner ( const size_type  tile) const
inlinevirtual

Maps tile to the processor that owns it.

Parameters
tileThe tile to be queried
Returns
Processor that logically owns tile

Implements TiledArray::Pmap.

Definition at line 88 of file blocked_pmap.h.

Here is the caller graph for this function:

Member Data Documentation

◆ local_

std::vector<size_type> TiledArray::Pmap::local_
protected

< The number of tiles mapped among all processes

Definition at line 55 of file pmap.h.

◆ procs_

const size_type TiledArray::Pmap::procs_
protected

< The rank of this process

Definition at line 53 of file pmap.h.

◆ rank_

const size_type TiledArray::Pmap::rank_
protected

The rank of this process.

Definition at line 52 of file pmap.h.

◆ size_

const size_type TiledArray::Pmap::size_
protected

< The number of processes

Definition at line 54 of file pmap.h.


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