FleCSI User API Version: 2.3.0
 
Loading...
Searching...
No Matches
Launch maps

Selecting topology colors to send to tasks. More...

Classes

struct  mapping< P >
 A prepared assignment of colors. More...
 

Typedefs

using Claims = std::vector< borrow::Claims >
 Desired underlying colors for each outer color.
 

Functions

Claims block (Color u, Color n)
 Assign colors in blocks.
 
Claims gather (Color u, Color n)
 Make all colors available on all point tasks.
 
template<class P >
mapping< P > make (topology_slot< P > &t)
 Create a mapping for initialization using an MPI task.
 
template<class P >
mapping< P > make (topology_slot< P > &t, const Claims &c)
 Create a mapping.
 
Claims robin (Color u, Color n)
 Assign colors in a cycle.
 

Detailed Description

Selecting topology colors to send to tasks.

Warning
Only the Legion backend supports non-trivial mappings that select any color but their own.

Typedef Documentation

◆ Claims

using Claims = std::vector<borrow::Claims>

Desired underlying colors for each outer color.

Elements need not have the same length.

Function Documentation

◆ block()

Claims block ( Color  u,
Color  n 
)

Assign colors in blocks.

For example, 5 colors are assigned to 3 tasks as {0,1}, {2,3}, and {4}.

Parameters
unumber of colors
nnumber of tasks

◆ robin()

Claims robin ( Color  u,
Color  n 
)

Assign colors in a cycle.

For example, 5 colors are assigned to 3 tasks as {0,3}, {1,4}, and {2}.

Parameters
unumber of colors
nnumber of tasks

◆ gather()

Claims gather ( Color  u,
Color  n 
)

Make all colors available on all point tasks.

Parameters
unumber of colors
nnumber of tasks

◆ make() [1/2]

template<class P >
mapping< P > make ( topology_slot< P > &  t,
const Claims c 
)

Create a mapping.

◆ make() [2/2]

template<class P >
mapping< P > make ( topology_slot< P > &  t)

Create a mapping for initialization using an MPI task.

The Claims are constructed using block.