ga_read_inc.c
来自「The example for Boor USING MPI2」· C语言 代码 · 共 29 行
C
29 行
#include "ga.h"int ga_read_inc( GA ga, int i, int j, int inc ){ int buf, rank; MPI_Aint disp; rank = (j - 1) / ga->chunk2; /* disp depends on the displacement unit being sizeof(int) */ disp = (j - 1 - (rank * ga->chunk2)) * ga->dim1 + i - 1; MPE_Mutex_lock( rank, ga->lock_win ); MPI_Win_lock( MPI_LOCK_SHARED, rank, MPI_MODE_NOCHECK, ga->ga_win ); MPI_Get( &buf, 1, MPI_INT, disp, 1, MPI_INT, rank, ga->ga_win ); MPI_Win_unlock( rank, ga->ga_win ); MPI_Win_lock( MPI_LOCK_SHARED, rank, MPI_MODE_NOCHECK, ga->ga_win ); MPI_Accumulate( &inc, 1, MPI_INT, disp, 1, MPI_INT, rank, MPI_SUM, ga->ga_win ); MPI_Win_unlock( rank, ga->ga_win ); MPE_Mutex_unlock( rank, ga->lock_win ); return buf;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?