int ARMCI_Rmw(int op, void *ploc, void *prem, int extra, int proc) { int ret; armci_profile_start(ARMCI_PROF_RMW); ret = PARMCI_Rmw(op, ploc, prem, extra, proc); armci_profile_stop(ARMCI_PROF_RMW); return ret; }
int ARMCI_Rmw(int op, void *ploc, void *prem, int extra, int proc) { int rval; static double stime, etime; stime = TIME(); rval = PARMCI_Rmw(op, ploc, prem, extra, proc); etime = TIME(); ARMCI_Rmw_t += etime - stime; return rval; }
static int register_in_mutex_queue(int id, int proc) { int *mutex_entry, ticket; if(glob_mutex[proc].count < id) armci_die2("armci:invalid mutex id",id, glob_mutex[proc].count); mutex_entry = glob_mutex[proc].token + id; PARMCI_Rmw(ARMCI_FETCH_AND_ADD, &ticket, mutex_entry, 1, proc); return ticket; }
int ARMCI_Rmw(int op, void *ploc, void *prem, int value, int proc) { return PARMCI_Rmw(op, ploc, prem, value, proc); }