• Xin Zhao's avatar
    Do memory barriers at proper places in RMA sync calls. · 6f8c3e59
    Xin Zhao authored
    We call memory barriers at proper places in RMA sync calls
    as following, and remove unnecessary memory barriers:
    
    (1) Win_fence: very beginning and very end.
    (2) Win_post/Win_complete: very beginning.
    (3) Win_start/Win_wait/Win_test: very end.
    (4) Win_lock/Win_lock_all: very end.
    (5) Win_unlock/Win_unlock_all: very beginning.
    (6) Win_flush/Win_flush_local/Win_flush_all/Win_flush_local_all: very beginning.
    
    About the reason of doing this, please refer to comments
    at the beginning of src/mpid/ch3/src/ch3u_rma_sync.c.
    
    No reviewer.
    6f8c3e59
ch3u_rma_sync.c 69.4 KB