TRIQS/nda 2.0.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
doc_mpi_overview.cpp
1#include <mpi/mpi.hpp>
2#include <nda/mpi.hpp>
3#include <nda/nda.hpp>
4#include <iostream>
5
6int main(int argc, char **argv) {
7 // initialize MPI environment
8 mpi::environment env(argc, argv);
9 mpi::communicator comm;
10
11 // create a 2x2 array on each process and fill it with its rank
12 nda::array<int, 2> A(2, 2);
13 A = comm.rank();
14
15 // reduce the array over all processes
16 auto A_sum = mpi::reduce(A);
17
18 // print the result
19 if (comm.rank() == 0) std::cout << A_sum << std::endl;
20}
basic_array< ValueType, Rank, Layout, 'A', ContainerPolicy > array
Alias template of an nda::basic_array with an 'A' algebra.
Includes all MPI relevant headers.
Includes all relevant headers for the core nda library.