VTK-m  2.0
Public Member Functions | Private Attributes | List of all members
vtkm::cont::AssignerPartitionedDataSet Class Reference

Assigner for PartitionedDataSet partitions. More...

#include <AssignerPartitionedDataSet.h>

Inheritance diagram for vtkm::cont::AssignerPartitionedDataSet:

Public Member Functions

VTKM_CONT AssignerPartitionedDataSet (const vtkm::cont::PartitionedDataSet &pds)
 Initialize the assigner using a partitioned dataset. More...
 
VTKM_CONT AssignerPartitionedDataSet (vtkm::Id num_partitions)
 
VTKM_CONT ~AssignerPartitionedDataSet () override
 
VTKM_CONT void local_gids (int rank, std::vector< int > &gids) const override
 
VTKM_CONT int rank (int gid) const override
 

Private Attributes

std::vector< vtkm::IdIScanPartitionCounts
 

Detailed Description

Assigner for PartitionedDataSet partitions.

AssignerPartitionedDataSet is a vtkmdiy::StaticAssigner implementation that uses PartitionedDataSet's partition distribution to build global-id/rank associations needed for several diy operations. It uses a contiguous assignment strategy to map partitions to global ids, i.e. partitions on rank 0 come first, then rank 1, etc. Any rank may have 0 partitions.

AssignerPartitionedDataSet uses collectives in the constructor hence it is essential it gets created on all ranks irrespective of whether the rank has any partitions.

Constructor & Destructor Documentation

◆ AssignerPartitionedDataSet() [1/2]

VTKM_CONT vtkm::cont::AssignerPartitionedDataSet::AssignerPartitionedDataSet ( const vtkm::cont::PartitionedDataSet pds)

Initialize the assigner using a partitioned dataset.

This may initialize collective operations to populate the assigner with information about partitions on all ranks.

◆ AssignerPartitionedDataSet() [2/2]

VTKM_CONT vtkm::cont::AssignerPartitionedDataSet::AssignerPartitionedDataSet ( vtkm::Id  num_partitions)

◆ ~AssignerPartitionedDataSet()

VTKM_CONT vtkm::cont::AssignerPartitionedDataSet::~AssignerPartitionedDataSet ( )
override

Member Function Documentation

◆ local_gids()

VTKM_CONT void vtkm::cont::AssignerPartitionedDataSet::local_gids ( int  rank,
std::vector< int > &  gids 
) const
override

vtkmdiy::Assigner API implementation.

◆ rank()

VTKM_CONT int vtkm::cont::AssignerPartitionedDataSet::rank ( int  gid) const
override

vtkmdiy::Assigner API implementation.

Member Data Documentation

◆ IScanPartitionCounts

std::vector<vtkm::Id> vtkm::cont::AssignerPartitionedDataSet::IScanPartitionCounts
private

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