Changeset 4185 for LMDZ6/branches


Ignore:
Timestamp:
Jun 23, 2022, 6:36:15 PM (2 years ago)
Author:
Laurent Fairhead
Message:

Ported to GPU using the replay_mod method: the phys.nc file that is output show now difference
between a run using GPU and a run without GPU

Location:
LMDZ6/branches/Portage_acc/libf/phylmd
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Portage_acc/libf/phylmd/thermcell_env.F90

    r4094 r4185  
    2525   logical mask(ngrid,nlay)
    2626
     27   !$acc data create (mask) &
     28   !$acc &    copyin (po, pt, pu, pv, pplay, pplev) &
     29   !$acc &    copyout (zo, zl, zh, ztv, zthl)     &
     30   !$acc &    copyout (zpspsk, zu, zv, pqsat)       &
     31   !$acc &
     32
    2733
    2834!^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    2935! Initialisations :
    3036!------------------
     37!!! temporary for GPU port   write(81) ngrid,nlay,lev_out,po,pt,pu,pv,pplay,pplev
    3138
     39
     40  !$acc kernels default(none) async
    3241   mask(:,:)=.true.
    33 
     42   !$acc end kernels
     43   
    3444!
    3545! calcul des caracteristiques de l environnement
     46  !$acc kernels default(none) async
    3647   DO  ll=1,nlay
    3748     DO ig=1,ngrid
     
    4152     enddo
    4253   enddo
    43 
     54  !$acc end kernels
     55   
    4456! Condensation :
    4557!---------------
     
    4759
    4860   call thermcell_qsat(ngrid*nlay,mask,pplev,pt,po,pqsat)
     61  !$acc kernels default(none) async
    4962   do ll=1,nlay
    5063      do ig=1,ngrid
     
    5467      enddo
    5568   enddo
    56 
     69  !$acc end kernels
    5770!-----------------------------------------------------------------------
    5871   if (prt_level.ge.1) print*,'0 OK convect8'
    5972
     73  !$acc kernels default(none) async
    6074   do ll=1,nlay
    6175      do ig=1,ngrid
     
    7488      enddo
    7589   enddo
     90  !$acc end kernels
    7691 
    77  RETURN
     92!!! temporary for GPU port !!!$acc update self(zo, zl, zh, ztv, zthl,zpspsk, zu, zv, pqsat)
     93!!! temporary for GPU port include "dump_param.h" ! replay automatic include
     94  !$acc end data
     95   RETURN
    7896   END
  • LMDZ6/branches/Portage_acc/libf/phylmd/thermcell_ini_mod.F90

    r4095 r4185  
    4040real, intent(in) :: RG_in,RD_in,RCPD_in,RKAPPA_in,RLVTT_in,RETV_in,tau_thermals_in
    4141
    42 print*,'thermcell_ini'
    43       if (iflag_thermals==15.or.iflag_thermals==16) then
    44          dvdq=0
    45          dqimpl=-1
    46       else
    47          dvdq=1
    48          dqimpl=1
    49       endif
     42   if (iflag_thermals==15.or.iflag_thermals==16) then
     43      dvdq=0
     44      dqimpl=-1
     45   else
     46      dvdq=1
     47      dqimpl=1
     48   endif
    5049   prt_level=prt_level_in
    5150   RG=RG_in
Note: See TracChangeset for help on using the changeset viewer.