Ignore:
Timestamp:
03/15/22 14:56:16 (2 years ago)
Author:
ymipsl
Message:

Implement small garbage collector for unfreed MPI windows and communicator.

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/context_client.cpp

    r2287 r2310  
    335335        MPI_Intercomm_create(commSelf_, 0, interCommMerged_, clientSize+rank, 0, &interComm) ; 
    336336        MPI_Intercomm_merge(interComm, false, &winComm_[rank]) ; 
     337        CXios::getMpiGarbageCollector().registerCommunicator(winComm_[rank]) ; 
    337338        MPI_Comm_free(&interComm) ; 
    338339        windows_[rank].resize(2) ; 
     340         
    339341        MPI_Win_create_dynamic(MPI_INFO_NULL, winComm_[rank], &windows_[rank][0]); 
     342        CXios::getMpiGarbageCollector().registerWindow(windows_[rank][0]) ; 
     343         
    340344        MPI_Win_create_dynamic(MPI_INFO_NULL, winComm_[rank], &windows_[rank][1]);    
     345        CXios::getMpiGarbageCollector().registerWindow(windows_[rank][1]) ; 
     346 
    341347        CTimer::get("create Windows").suspend() ; 
    342348      } 
Note: See TracChangeset for help on using the changeset viewer.