⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 log_mpi_rma.c

📁 fortran并行计算包
💻 C
📖 第 1 页 / 共 2 页
字号:
/*   (C) 2001 by Argonne National Laboratory.       See COPYRIGHT in top-level directory.*//*   This file should be INCLUDED into log_mpi_core.c when adding the   RMA routines to the profiling list   Also set MPE_MAX_KNOWN_STATES >= 200*/#define MPE_ACCUMULATE_ID 181#define MPE_ALLOC_MEM_ID 182#define MPE_FREE_MEM_ID 183#define MPE_GET_ID 184#define MPE_PUT_ID 185#define MPE_WIN_COMPLETE_ID 186#define MPE_WIN_CREATE_ID 187#define MPE_WIN_FENCE_ID 188#define MPE_WIN_FREE_ID 189#define MPE_WIN_GET_GROUP_ID 190#define MPE_WIN_GET_NAME_ID 191#define MPE_WIN_LOCK_ID 192#define MPE_WIN_POST_ID 193#define MPE_WIN_SET_NAME_ID 194#define MPE_WIN_START_ID 195#define MPE_WIN_TEST_ID 196#define MPE_WIN_UNLOCK_ID 197#define MPE_WIN_WAIT_ID 198void MPE_Init_mpi_rma( void ){  MPE_State *state;  state = &states[MPE_ACCUMULATE_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Accumulate";  state->color = "purple";  state = &states[MPE_ALLOC_MEM_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Alloc_mem";  state->color = "purple";  state = &states[MPE_FREE_MEM_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Free_mem";  state->color = "purple";  state = &states[MPE_GET_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Get";  state->color = "LightGreen";  state = &states[MPE_PUT_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Put";  state->color = "LightBlue";  state = &states[MPE_WIN_COMPLETE_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_complete";  state->color = "purple";  state = &states[MPE_WIN_CREATE_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_create";  state->color = "purple";  state = &states[MPE_WIN_FENCE_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_fence";  state->color = "tomato";  state = &states[MPE_WIN_FREE_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_free";  state->color = "purple";  state = &states[MPE_WIN_GET_GROUP_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_get_group";  state->color = "purple";  state = &states[MPE_WIN_GET_NAME_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_get_name";  state->color = "purple";  state = &states[MPE_WIN_LOCK_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_lock";  state->color = "purple";  state = &states[MPE_WIN_POST_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_post";  state->color = "DarkGreen";  state = &states[MPE_WIN_SET_NAME_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_set_name";  state->color = "purple";  state = &states[MPE_WIN_START_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_start";  state->color = "purple";  state = &states[MPE_WIN_TEST_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_test";  state->color = "DarkOrange";  state = &states[MPE_WIN_UNLOCK_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_unlock";  state->color = "purple";  state = &states[MPE_WIN_WAIT_ID];  state->kind_mask = MPE_KIND_RMA;  state->name = "MPI_Win_wait";  state->color = "maroon";}int MPI_Accumulate( void *origin_addr, int origin_count,                    MPI_Datatype origin_datatype, int target_rank,                    MPI_Aint target_disp, int target_count,                    MPI_Datatype target_datatype, MPI_Op op, MPI_Win win ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Accumulate - prototyping replacement for MPI_Accumulate      Log the beginning and ending of the time spent in MPI_Accumulate calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(MPE_COMM_NULL,MPE_ACCUMULATE_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Accumulate( origin_addr, origin_count,                               origin_datatype, target_rank,                               target_disp, target_count,                               target_datatype, op, win );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(MPE_COMM_NULL,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;}int MPI_Alloc_mem( MPI_Aint size, MPI_Info info, void *baseptr ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Alloc_mem - prototyping replacement for MPI_Alloc_mem      Log the beginning and ending of the time spent in MPI_Alloc_mem calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(MPE_COMM_NULL,MPE_ALLOC_MEM_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Alloc_mem( size, info, baseptr );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(MPE_COMM_NULL,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;}int MPI_Free_mem( void *base ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Free_mem - prototyping replacement for MPI_Free_mem      Log the beginning and ending of the time spent in MPI_Free_mem calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(MPE_COMM_NULL,MPE_FREE_MEM_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Free_mem( base );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(MPE_COMM_NULL,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;}int MPI_Get( void *origin_addr, int origin_count,             MPI_Datatype origin_datatype, int target_rank,             MPI_Aint target_disp, int target_count,             MPI_Datatype target_datatype, MPI_Win win ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Get - prototyping replacement for MPI_Get      Log the beginning and ending of the time spent in MPI_Get calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(MPE_COMM_NULL,MPE_GET_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Get( origin_addr, origin_count,                        origin_datatype, target_rank,                        target_disp, target_count,                        target_datatype, win );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(MPE_COMM_NULL,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;}int MPI_Put( void *origin_addr, int origin_count,             MPI_Datatype origin_datatype, int target_rank,             MPI_Aint target_disp, int target_count,             MPI_Datatype target_datatype, MPI_Win win ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Put - prototyping replacement for MPI_Put      Log the beginning and ending of the time spent in MPI_Put calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(MPE_COMM_NULL,MPE_PUT_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Put( origin_addr, origin_count,                        origin_datatype, target_rank,                        target_disp, target_count,                        target_datatype, win );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(MPE_COMM_NULL,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;}int MPI_Win_complete( MPI_Win win ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Win_complete - prototyping replacement for MPI_Win_complete      Log the beginning and ending of the time spent in MPI_Win_complete calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(MPE_COMM_NULL,MPE_WIN_COMPLETE_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Win_complete( win );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(MPE_COMM_NULL,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;}int MPI_Win_create( void *base, MPI_Aint size, int disp_unit,                    MPI_Info info, MPI_Comm comm, MPI_Win *win ){  int returnVal;  MPE_LOG_STATE_DECL  MPE_LOG_THREADSTM_DECL/*      MPI_Win_create - prototyping replacement for MPI_Win_create      Log the beginning and ending of the time spent in MPI_Win_create calls.*/  MPE_LOG_THREADSTM_GET  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_BEGIN(comm,MPE_WIN_CREATE_ID)  MPE_LOG_THREAD_UNLOCK#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_OFF#endif  returnVal = PMPI_Win_create( base, size, disp_unit, info, comm, win );#if defined( MAKE_SAFE_PMPI_CALL )    MPE_LOG_ON#endif  MPE_LOG_THREAD_LOCK  MPE_LOG_STATE_END(comm,NULL)  MPE_LOG_THREAD_UNLOCK  return returnVal;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -