我打算在这个夏天掌握 MPI。我开始阅读 Peter Pacheco 的“An Introduction to Parallel Programming”,并解决了它的练习。在其中一个 MPI 练习中,他要求使用 MPI_Scan 实现简单的前缀求和,但我无法使用 MPI_Scan 实现它。我通过使用 MPI_Scatter 和 MPI_Gather 找到了解决方案。请帮我找到 MPI_Scan 的答案。
// declaring array and result
// generating random array
MPI_Bcast( &array, n, MPI_FLOAT, 0, MPI_COMM_WORLD);
MPI_Barrier(MPI_COMM_WORLD);
MPI_Scan(array, result, n, MPI_FLOAT, MPI_SUM, MPI_COMM_WORLD);
我希望结果中有前缀总和,但由于某种原因它不起作用。