Ignore:
Timestamp:
09/16/16 15:37:45 (8 years ago)
Author:
ymipsl
Message:

Missing synchronisations for OpenMP on vertical levels

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • codes/icosagcm/trunk/src/hevi_scheme.f90

    r387 r480  
    5454    USE disvert_mod 
    5555    USE caldyn_hevi_mod 
     56    USE omp_para 
     57    USE checksum_mod 
    5658    LOGICAL :: fluxt_zero(ndomain) ! set to .TRUE. to start accumulating fluxes in time 
    5759    INTEGER :: it,j,l, ind 
     
    6870            f_dW_slow(:,j), f_dW_fast(:,j) ) 
    6971       ! accumulate mass fluxes for transport scheme 
     72        
    7073       DO ind=1,ndomain 
    7174          IF (.NOT. assigned_domain(ind)) CYCLE 
     
    9194             CALL update_3D(cjl(l,j), f_geopot, f_dPhi_fast(:,l)) 
    9295          END IF 
     96!$OMP BARRIER        
    9397       END DO 
    9498    END DO 
     
    145149   
    146150  SUBROUTINE update_2D(w, f_y, f_dy) 
     151  USE omp_para 
    147152    REAL(rstd) :: w 
    148153    TYPE(t_field) :: f_y(:), f_dy(:) 
     
    152157       IF (.NOT. assigned_domain(ind)) CYCLE 
    153158       dy=f_dy(ind); y=f_y(ind) 
    154        CALL compute_update_2D(w,y,dy) 
     159       IF (is_omp_level_master) CALL compute_update_2D(w,y,dy) 
    155160    ENDDO 
    156161  END SUBROUTINE update_2D 
Note: See TracChangeset for help on using the changeset viewer.