Index: NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/domvvl.F90
===================================================================
--- NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/domvvl.F90	(revision 13901)
+++ NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/domvvl.F90	(revision 13906)
@@ -439,9 +439,17 @@
          !                       ! d - thickness diffusion transport: boundary conditions
          !                             (stored for tracer advction and continuity equation)
+#if defined key_mpi3
+         CALL lbc_lnk_nc_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp)
+#else
          CALL lbc_lnk_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp)
+#endif
 
          ! 4 - Time stepping of baroclinic scale factors
          ! ---------------------------------------------
+#if defined key_mpi3
+         CALL lbc_lnk_nc_multi( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp )
+#else
          CALL lbc_lnk( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp )
+#endif
          tilde_e3t_a(:,:,:) = tilde_e3t_b(:,:,:) + rDt * tmask(:,:,:) * tilde_e3t_a(:,:,:)
 
@@ -717,5 +725,9 @@
                &                           + e1e2t(ji+1,jj) * ( pe3_in(ji+1,jj,jk) - e3t_0(ji+1,jj,jk) ) )
          END_3D
+#if defined key_mpi3
+         CALL lbc_lnk_nc_multi( 'domvvl', pe3_out(:,:,:), 'U', 1._wp )
+#else
          CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'U', 1._wp )
+#endif
          pe3_out(:,:,:) = pe3_out(:,:,:) + e3u_0(:,:,:)
          !
@@ -726,5 +738,9 @@
                &                           + e1e2t(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - e3t_0(ji,jj+1,jk) ) )
          END_3D
+#if defined key_mpi3
+         CALL lbc_lnk_nc_multi( 'domvvl', pe3_out(:,:,:), 'V', 1._wp )
+#else
          CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'V', 1._wp )
+#endif
          pe3_out(:,:,:) = pe3_out(:,:,:) + e3v_0(:,:,:)
          !
@@ -736,5 +752,9 @@
                &                           + e1e2u(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - e3u_0(ji,jj+1,jk) ) )
          END_3D
+#if defined key_mpi3
+         CALL lbc_lnk_nc_multi( 'domvvl', pe3_out(:,:,:), 'F', 1._wp )
+#else
          CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'F', 1._wp )
+#endif
          pe3_out(:,:,:) = pe3_out(:,:,:) + e3f_0(:,:,:)
          !
Index: NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/trazdf.F90
===================================================================
--- NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/trazdf.F90	(revision 13901)
+++ NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/trazdf.F90	(revision 13906)
@@ -96,5 +96,9 @@
          END DO
 !!gm this should be moved in trdtra.F90 and done on all trends
+#if defined key_mpi3
+         CALL lbc_lnk_nc_multi( 'trazdf', ztrdt, 'T', 1. , ztrds, 'T', 1. )
+#else
          CALL lbc_lnk_multi( 'trazdf', ztrdt, 'T', 1. , ztrds, 'T', 1. )
+#endif
 !!gm
          CALL trd_tra( kt, Kmm, Krhs, 'TRA', jp_tem, jptra_zdf, ztrdt )
Index: NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/usrdef_istate.F90
===================================================================
--- NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/usrdef_istate.F90	(revision 13901)
+++ NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/usrdef_istate.F90	(revision 13906)
@@ -189,5 +189,9 @@
                pssh(ji,jj) = pssh(ji,jj-1) - ff_t(ji,jj) / grav * pu(ji,jj,1) * e2t(ji,jj)
             END_2D
+#if defined key_mpi3
+            CALL lbc_lnk_nc_multi( 'usrdef_istate', pssh, 'T',  1. )
+#else
             CALL lbc_lnk( 'usrdef_istate', pssh, 'T',  1. )
+#endif
          END DO
          
@@ -305,7 +309,13 @@
          pssh(:,:) = pssh(:,:) + ( 0.1  * zrandom(:,:) - 0.05 )
       END IF
+#if defined key_mpi3
+      CALL lbc_lnk_nc_multi( 'usrdef_istate', pssh, 'T',  1. )
+      CALL lbc_lnk_nc_multi( 'usrdef_istate', pts , 'T',  1. )
+      CALL lbc_lnk_nc_multi( 'usrdef_istate', pu, 'U', -1., pv, 'V', -1. )
+#else
       CALL lbc_lnk( 'usrdef_istate', pssh, 'T',  1. )
       CALL lbc_lnk( 'usrdef_istate', pts , 'T',  1. )
       CALL lbc_lnk_multi( 'usrdef_istate', pu, 'U', -1., pv, 'V', -1. )
+#endif
 
    END SUBROUTINE usr_def_istate
Index: NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/usrdef_zgr.F90
===================================================================
--- NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/usrdef_zgr.F90	(revision 13901)
+++ NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/tests/CANAL/MY_SRC/usrdef_zgr.F90	(revision 13906)
@@ -202,5 +202,9 @@
       END SELECT
       !
+#if defined key_mpi3
+      CALL lbc_lnk_nc_multi( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed)
+#else
       CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed)
+#endif
       !
       k_bot(:,:) = NINT( z2d(:,:) )          ! =jpkm1 over the ocean point, =0 elsewhere
