STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types | Protected Attributes
stapl::balance_map< Dimensions, GID, Index, ContainerGID, CID > Struct Template Reference

Computes a balanced mapping of ids to partitions. More...

Public Member Functions

 balance_map (GID num_gids, Index num_blocks)
 
Index operator() (GID id) const
 
void update (update_vec_t const &updates, size_t level)
 Method required of all mapping functions. The method is called by the update_distribution method of containers. More...
 

Public Types

typedef GID gid_type
 Type of the id being mapped into partitions. Required by Core.
 
typedef Index index_type
 Type of the partition id. Required by Core.
 

Protected Attributes

GID m_num_gids
 
Index m_num_blocks
 
Index m_num_large_blocks
 
Index m_large_block_size
 

Detailed Description

template<int Dimensions, typename GID, typename Index = GID, typename ContainerGID = GID, typename CID = unsigned long int>
struct stapl::balance_map< Dimensions, GID, Index, ContainerGID, CID >

Computes a balanced mapping of ids to partitions.

The struct is used to implement view-based specifications of block-cyclic distributions. The implementation assumes the GID / Index operation is defined. This struct differs from block in that it allows for two sizes of blocks, while block will produce uniform partitions with the exception of the last.

Member Function Documentation

◆ update()

template<int Dimensions, typename GID, typename Index = GID, typename ContainerGID = GID, typename CID = unsigned long int>
void stapl::balance_map< Dimensions, GID, Index, ContainerGID, CID >::update ( update_vec_t const &  updates,
size_t  level 
)

Method required of all mapping functions. The method is called by the update_distribution method of containers.

Warning
Currently mapping functions used in view-based specifications other than arbitrary do not support updates.

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