Как распараллелить данный алгоритм
Привет,
Я преобразовал алгоритм GE, приведенный в книге. Теперь я хочу распараллелить его с помощью MPI. Может кто-нибудь, пожалуйста, подскажет мне, как это сделать. Моя серийная версия приведена ниже:
void GaussianElimination(double **A, double *b,double *y) { cout<<"Inside Gaussian 1"; for(int k=0; k<=n-1; ++k) { cout<<"k =" <<k<<endl; for(int j= k+1; j <=n-1; ++j){ cout<<"A["<<k<<"]["<<k<<"] =" <<A[k][k] <<endl; A[k][j] = A[k][j]/A[k][k]; } y[k] = b[k]/A[k][k]; A[k][k]=1; cout<<"Reached"; for(int i=k+1; i<=n-1; i++){ for(int j=k+1; j<=n-1; j++) A[i][j] = A[i][j] -A[i][k] *A[k][j]; b[i]= b[i] -A[i][k] * y[k]; A[i][k] = 0; } } cout<<"answers"<<endl; for(int i=0; i<=n-1; i++){ for(int j=0;j<=n-1;j++) cout<<A[i][j]<<" "; cout<<endl; } }
Какое-нибудь тело, пожалуйста, направьте меня.
Что я уже пробовал:
Привет,
Я ищу в интернете.
Зульфи.
Gerry Schmitz
Вы уже поняли, что может идти параллельно?