в простой программе MPI я использовал разделение столбцов большой матрицы. Как я могу упорядочить вывод так, чтобы каждая матрица появилась рядом с другим упорядоченным? Я пробовал этот простой код, эффект сильно отличается от желаемого:
for(int i=0;i<10;i++)
{
for(int k=0;k<numprocs;k++)
{
if (my_id==k){
for(int j=1;j<10;j++)
printf("%d",data[i][j]);
}
MPI_Barrier(com);
}
if(my_id==0)
printf("\n");
}
Кажется, что каждый процесс имеет свой собственный stdout, и поэтому невозможно заказать упорядоченные строки без отправки всех данных одному хозяину, который будет распечатываться. Мое предположение верно? Или что я делаю неправильно?