Разбираюсь с mpich. Пробую посчитать сумму sum(i^2,1..2000) на 2-х процессорах для начала. Написал вот что
#include <iostream>
#include "mpi.h"
main(int argc, char *argv[])
{
MPI::Init(argc, argv);
int rank = MPI::COMM_WORLD.Get_rank();
int size = MPI::COMM_WORLD.Get_size();
int s1=0,s2=0;
if( rank==0 ) {
for( int i=1; i<1000; ++i )
s1+=i^2;
std::cout << "s1=" << s1 << std::endl;
}
if( rank==1 ) {
for( int i=1000; i<=2000; ++i )
s2+=i^2;
std::cout << "s2=" << s2 << std::endl;
}
MPI::Finalize();
}
Как теперь сложить s1 c s2 и вывести s = s1 + s2