TRIQS/mpi 1.3.0
C++ interface to MPI
Loading...
Searching...
No Matches
array.hpp File Reference
#include "./communicator.hpp"
#include "./ranges.hpp"
#include "./utils.hpp"
#include <mpi.h>
#include <array>
#include <cstddef>
#include <type_traits>
#include <utility>

Detailed Description

Provides an MPI broadcast and reduce for std::array.

Definition in file array.hpp.

Go to the source code of this file.

Functions

template<typename T, std::size_t N>
void mpi::mpi_broadcast (std::array< T, N > &arr, communicator c={}, int root=0)
 Implementation of an MPI broadcast for a std::array.
 
template<typename T, std::size_t N>
auto mpi::mpi_reduce (std::array< T, N > const &arr, communicator c={}, int root=0, bool all=false, MPI_Op op=MPI_SUM)
 Implementation of an MPI reduce for a std::array.
 
template<typename T1, std::size_t N1, typename T2, std::size_t N2>
void mpi::mpi_reduce_into (std::array< T1, N1 > const &arr_in, std::array< T2, N2 > &arr_out, communicator c={}, int root=0, bool all=false, MPI_Op op=MPI_SUM)
 Implementation of an MPI reduce for a std::array that reduces directly into an existing output array.