Skip to main content

class collective_group

Declaration

class collective_group { /* full declaration omitted */ };

Description

Each collective host task is executed within a collective group. If multiple host tasks are scheduled within the same collective group, they are guaranteed to execute in the same order on every node and within a single thread per node. Each group has its own MPI communicator spanning all participating nodes, so MPI operations the user invokes from different collective groups do not race.

Member Variables

detail::collective_group_id m_cgid
static detail::collective_group_id s_next_cgid = detail::root_collective_group_id + 1

Member Function Overview

Member Functions

collective_group() noexcept

Description

Creates a new collective group with a globally unique id. This must only be called from the main thread.