Ignore:
Timestamp:
03/27/18 20:40:31 (6 years ago)
Author:
yushan
Message:

tests (client, complete, toy, rempa) work fine with 2-level server mode. Tested on ADA (2*2+2)

Location:
XIOS/dev/branch_openmp/extern/src_ep_dev
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_openmp/extern/src_ep_dev/ep_dup.cpp

    r1354 r1468  
    9494        out_comm[i].ep_comm_ptr->intercomm->remote_rank_map = new RANK_MAP; 
    9595 
    96         out_comm[i].ep_comm_ptr->intercomm->intercomm_rank_map = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->intercomm_rank_map; 
    97         out_comm[i].ep_comm_ptr->intercomm->local_rank_map = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->local_rank_map; 
    98         out_comm[i].ep_comm_ptr->intercomm->remote_rank_map = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->remote_rank_map; 
     96        int map_size = 0; 
     97        map_size = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->intercomm_rank_map->size(); 
     98        out_comm[i].ep_comm_ptr->intercomm->intercomm_rank_map->resize(map_size); 
     99        for(int ii=0; ii<map_size; ii++) 
     100          out_comm[i].ep_comm_ptr->intercomm->intercomm_rank_map->at(ii) = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->intercomm_rank_map->at(ii); 
     101 
     102        map_size = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->local_rank_map->size(); 
     103        out_comm[i].ep_comm_ptr->intercomm->local_rank_map->resize(map_size); 
     104        for(int ii=0; ii<map_size; ii++) 
     105          out_comm[i].ep_comm_ptr->intercomm->local_rank_map->at(ii) = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->local_rank_map->at(ii); 
     106 
     107        map_size = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->remote_rank_map->size(); 
     108        out_comm[i].ep_comm_ptr->intercomm->remote_rank_map->resize(map_size); 
     109        for(int ii=0; ii<map_size; ii++) 
     110          out_comm[i].ep_comm_ptr->intercomm->remote_rank_map->at(ii) = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->remote_rank_map->at(ii); 
     111 
     112 
     113        //out_comm[i].ep_comm_ptr->intercomm->intercomm_rank_map = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->intercomm_rank_map; 
     114        //out_comm[i].ep_comm_ptr->intercomm->local_rank_map = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->local_rank_map; 
     115        //out_comm[i].ep_comm_ptr->intercomm->remote_rank_map = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->remote_rank_map; 
    99116 
    100117        out_comm[i].ep_comm_ptr->intercomm->local_comm = comm.ep_comm_ptr->comm_list[i].ep_comm_ptr->intercomm->local_comm;         
  • XIOS/dev/branch_openmp/extern/src_ep_dev/ep_free.cpp

    r1379 r1468  
    99  int MPI_Comm_free(MPI_Comm *comm) 
    1010  { 
    11  
    1211    if(! comm->is_ep) 
    1312    { 
Note: See TracChangeset for help on using the changeset viewer.