Ignore:
Timestamp:
05/28/18 17:28:07 (6 years ago)
Author:
yushan
Message:

rank_map is passed from vector to map, in order to have more flexibility in comm_split

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_openmp/extern/ep_dev/ep_allgatherv.cpp

    r1500 r1503  
    9292      { 
    9393        int extra = 0; 
    94         for(int j=0, k=0; j<ep_size, k<comm->rank_map->at(i).first; j++) 
    95           if(comm->rank_map->at(i).second == comm->rank_map->at(j).second) 
     94        for(int j=0, k=0; j<ep_size, k<comm->ep_rank_map->at(i).first; j++) 
     95          if(comm->ep_rank_map->at(i).second == comm->ep_rank_map->at(j).second) 
    9696          { 
    9797            extra += recvcounts[j]; 
     
    9999          }   
    100100 
    101         offset = mpi_displs[comm->rank_map->at(i).second] +  extra; 
     101        offset = mpi_displs[comm->ep_rank_map->at(i).second] +  extra; 
    102102 
    103103        memcpy(recvbuf+displs[i]*datasize, tmp_recvbuf+offset*datasize, recvcounts[i]*datasize); 
Note: See TracChangeset for help on using the changeset viewer.