Changeset 4442 for LMDZ6/branches


Ignore:
Timestamp:
Feb 17, 2023, 5:28:31 PM (15 months ago)
Author:
Laurent Fairhead
Message:

GPU modifications to calling routines

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

Legend:

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

    r4166 r4442  
    12711271    !$acc & copyout(d_u,d_v,d_t,d_qx,d_ps) &
    12721272    !$acc &    create(t_w, q_w, limbas, d_t_adjwk, d_q_adjwk) &
    1273     !$acc &    create(t_x, q_x)
     1273    !$acc &    create(d_deltaq_ajs_cv, d_deltat_ajs_cv) &
     1274    !$acc &    create(t_x, q_x) &
    12741275!    !$acc &    present(wake_s, wake_deltat, wake_deltaq)  &
    1275 !    !$acc &    present(t_seri,q_seri)
     1276    !$acc &    present(t_seri,q_seri, ql_seri, v_seri, u_seri, qs_seri, rneb_seri)
    12761277
    12771278   
     
    18031804!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    18041805       CALL wake_ini(rg,rd,rv,prt_level)
     1806   CALL iophys_ini(pdtphys) ! replay automatic include
     1807   open(81,file='dump_param.bin',form='unformatted')  ! replay automatic include
    18051808       CALL thermcell_ini(iflag_thermals,prt_level,tau_thermals,lunout, &
    1806    &    RG,RD,RCPD,RKAPPA,RLVTT,RETV)
     1809   &    RG,RD,RCPD,RKAPPA,RLVTT,RETV, RTT)
    18071810
    18081811!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     
    30103013             !$acc update self(d_t_adjwk, d_q_adjwk)
    30113014             !
    3012                  !$acc kernels default(none) async
     3015             !$acc kernels default(none) async
    30133016                DO k=1,klev
    30143017                   DO i=1,klon
  • LMDZ6/branches/Portage_acc/libf/phylmd/thermcell_ini_mod.F90

    r4185 r4442  
    44save
    55   integer :: dvdq=1,dqimpl=-1,prt_level=0,lunout
    6    real RG,RD,RCPD,RKAPPA,RLVTT,RLvCp,RETV
     6   real RG,RD,RCPD,RKAPPA,RLVTT,RLvCp,RETV, RTT
    77   real           :: r_aspect_thermals,tau_thermals,fact_thermals_ed_dz
    88   integer        :: iflag_thermals_ed,iflag_thermals_optflux,iflag_thermals_closure
     
    1010
    1111!$OMP THREADPRIVATE(dvdq,dqimpl,prt_level,lunout)
    12 !$OMP THREADPRIVATE(RG,RD,RCPD,RKAPPA,RLVTT,RLvCp)
     12!$OMP THREADPRIVATE(RG,RD,RCPD,RKAPPA,RLVTT,RLvCp, RTT)
    1313!$OMP THREADPRIVATE(r_aspect_thermals,tau_thermals,fact_thermals_ed_dz)
    1414!$OMP THREADPRIVATE(iflag_thermals_ed,iflag_thermals_optflux,iflag_thermals_closure)
     
    3333
    3434SUBROUTINE thermcell_ini(iflag_thermals,prt_level_in,tau_thermals_in,lunout_in, &
    35    &    RG_in,RD_in,RCPD_in,RKAPPA_in,RLVTT_in,RETV_in)
     35   &    RG_in,RD_in,RCPD_in,RKAPPA_in,RLVTT_in,RETV_in, RTT_in)
    3636
    3737   USE ioipsl_getin_p_mod, ONLY : getin_p
    3838
    3939integer, intent(in) :: iflag_thermals,prt_level_in,lunout_in
    40 real, intent(in) :: RG_in,RD_in,RCPD_in,RKAPPA_in,RLVTT_in,RETV_in,tau_thermals_in
     40real, intent(in) :: RG_in,RD_in,RCPD_in,RKAPPA_in,RLVTT_in,RETV_in,tau_thermals_in, RTT_in
    4141
    4242   if (iflag_thermals==15.or.iflag_thermals==16) then
     
    5555   RLvCp = RLVTT/RCPD
    5656   RETV=RETV_in
     57   RTT=RTT_in
    5758   tau_thermals=tau_thermals_in
    5859   lunout=lunout_in
  • LMDZ6/branches/Portage_acc/libf/phylmd/thermcell_main.F90

    r4132 r4442  
    130130#endif
    131131
     132     
    132133!
    133134
     
    165166!   --------------------------------------------------------------------
    166167!
     168
     169   !$acc data &
     170   !$acc &   copyin (po, pt, pu, pv, pplay, pplev) &
     171   !$acc &   copyout(zo, zl, zh, ztv, zthl)        &
     172   !$acc &   copyout (zpspsk, zu, zv, zqsat)       &
     173   !$acc &
     174       
    167175      CALL thermcell_env(ngrid,nlay,po,pt,pu,pv,pplay,  &
    168176     &           pplev,zo,zh,zl,ztv,zthl,zu,zv,zpspsk,zqsat,lev_out)
    169177       
     178   !$acc end data     
    170179      if (prt_level.ge.1) print*,'thermcell_main apres thermcell_env'
    171180
     
    687696
    688697      if (prt_level.ge.1) print*,'thermcell_main FIN  OK'
     698     
    689699
    690700 RETURN
Note: See TracChangeset for help on using the changeset viewer.