栅栏方式 它是一种松同步方式,使用这一方式时,对窗口的操作必须放在一对栅栏语句之间,这样,当程序走出栅栏语句划定的区域之后,可以保证栅栏语句之间所有对窗口的操作都已经完成。 MPI_WIN_FENCE(assert, win) INassert程序的声明 INwin 窗口对象 int MPI_Win_fence(int assert, MPI_Win win) MPI_WIN_FENCE(ASSERT,WIN, IERROR) INTEGER ASSERT, WIN, IERROR MPI_WIN_FENCE是一个组调用,即win进程组内的所有进程,不管它有没有显式的窗口数据操作,都必须得执行这一调用。
可以把第一个MPI_WIN_FENCE调用看作是允许下面后续的程序执行窗口操作,而第二个MPI_WIN_FENCE调用看作是上面所有关于窗口的操作都已经完成,即窗口数据已经修改完成,或者从窗口读取的数据已经达到本地缓冲区,从而可以使用该缓冲区中的数据或者释放该数据缓冲区。 |
|||||||||||||||