New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 14891 – NEMO

Changeset 14891


Ignore:
Timestamp:
2021-05-20T15:48:51+02:00 (3 years ago)
Author:
dguibert
Message:

add lbc_lnk_pt2pt_async

Introduce a new pt2pt scheme allowing to overlap communication and computation
by

  1. calling irecv
  2. compute on whole domain using a dummy subroutine
  3. calling isend

... usual unpack

Location:
NEMO/branches/2021/dev_r14447_HPC-07_Irrmann_try_new_pt2pt/src/OCE/LBC
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14447_HPC-07_Irrmann_try_new_pt2pt/src/OCE/LBC/lbclnk.F90

    r14835 r14891  
    4646      MODULE PROCEDURE   lbc_lnk_oldpt2pt_sp, lbc_lnk_oldpt2pt_dp 
    4747   END INTERFACE lbc_lnk_oldpt2pt 
    48     
     48 
    4949   INTERFACE lbc_lnk_neicoll 
    5050      MODULE PROCEDURE   lbc_lnk_neicoll_sp ,lbc_lnk_neicoll_dp 
     
    6363 
    6464   REAL(dp), DIMENSION(:), ALLOCATABLE ::   buffsnd_dp, buffrcv_dp   ! MPI send/recv buffers 
    65    REAL(sp), DIMENSION(:), ALLOCATABLE ::   buffsnd_sp, buffrcv_sp   !  
     65   REAL(sp), DIMENSION(:), ALLOCATABLE ::   buffsnd_sp, buffrcv_sp   ! 
    6666   INTEGER,  DIMENSION(8)              ::   nreq_p2p                 ! request id for MPI_Isend in point-2-point communication 
    67     
     67 
    6868   !! * Substitutions 
    6969   !!#  include "do_loop_substitute.h90" 
     
    150150#  include "lbc_lnk_neicoll_generic.h90" 
    151151#  include "lbc_lnk_persistent.h90" 
     152#  include "lbc_lnk_pt2pt_async.h90" 
    152153#  undef MPI_TYPE 
    153154#  undef BUFFSND 
     
    166167#  include "lbc_lnk_neicoll_generic.h90" 
    167168#  include "lbc_lnk_persistent.h90" 
     169#  include "lbc_lnk_pt2pt_async.h90" 
    168170#  undef MPI_TYPE 
    169171#  undef BUFFSND 
Note: See TracChangeset for help on using the changeset viewer.