KaMPIng 0.1.1
Flexible and (near) zero-overhead C++ bindings for MPI
Loading...
Searching...
No Matches
alltoall_dispatch.hpp File Reference

Plugin to dispatch to one of multiple possible algorithms for alltoallv exchanges. More...

#include "kamping/checking_casts.hpp"
#include "kamping/collectives/allreduce.hpp"
#include "kamping/collectives/alltoall.hpp"
#include "kamping/communicator.hpp"
#include "kamping/environment.hpp"
#include "kamping/parameter_objects.hpp"
#include "kamping/plugin/alltoall_grid.hpp"
#include "kamping/plugin/alltoall_sparse.hpp"
#include "kamping/plugin/plugin_helpers.hpp"
Include dependency graph for alltoall_dispatch.hpp:

Go to the source code of this file.

Classes

struct  kamping::plugin::dispatch_alltoall::internal::PredicateDispatchAlltoall
 Predicate to check whether an argument provided to alltoallv_dispatch shall be discarded in the internal calls. More...
 
class  kamping::plugin::DispatchAlltoall< Comm, DefaultContainerType >
 Plugin providing an alltoallv exchange method which calls one of multiple underlying alltoallv exchange algorithms depending on the communication volume. More...
 

Enumerations

enum class  kamping::plugin::dispatch_alltoall::ParameterType { comm_volume_threshold }
 Parameter types used for the DispatchAlltoall plugin. More...
 

Functions

auto kamping::plugin::dispatch_alltoall::comm_volume_threshold (size_t num_bytes)
 The threshold for the maximum bottleneck communication volume in number of bytes indicating for when to switch from grid to builtin alltoall.
 

Detailed Description

Plugin to dispatch to one of multiple possible algorithms for alltoallv exchanges.

Enumeration Type Documentation

◆ ParameterType

Parameter types used for the DispatchAlltoall plugin.

Enumerator
comm_volume_threshold 

Tag used to the communication volume threshold to use within alltoall_dispatch.

Function Documentation

◆ comm_volume_threshold()

auto kamping::plugin::dispatch_alltoall::comm_volume_threshold ( size_t num_bytes)
inline

The threshold for the maximum bottleneck communication volume in number of bytes indicating for when to switch from grid to builtin alltoall.

Parameters
num_bytesThreshold volume in number of bytes.
Returns
The corresponding parameter object.