Changeset 1304


Ignore:
Timestamp:
Mar 12, 2014 10:29:42 AM (8 years ago)
Author:
raasch
Message:

openmp bugfix + bugfix for single core MPI runs
ulimit option in mrun changed from -Ss to -s

Location:
palm/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SCRIPTS/mrun

    r1295 r1304  
    2222# Current revisions:
    2323# ------------------
     24# ulimit option changed from -Ss to -s
    2425# bugfix: missing "fi" in r1289
    2526#
     
    438439    printf "\n        -n    node usage (shared/not_shared)           depending on -h"
    439440    printf "\n        -o    OUTPUT control list                      \"\" "
    440     printf "\n        -O    use OpenMP                               ---"
     441    printf "\n        -O    threads per openMP task                  ---"
    441442    printf "\n        -p    software package list                    \"\" "
    442443    printf "\n        -q    queue                                    \"$queue\" "
     
    34333434                   # INCREASE STACK SIZE TO UNLIMITED, BECAUSE OTHERWISE LARGE RUNS
    34343435                   # MAY ABORT
    3435                 ulimit -Ss unlimited
     3436                ulimit -s unlimited
    34363437                printf "\n      threads per task: $threads_per_task  stacksize: unlimited"
    34373438             fi
  • palm/trunk/SOURCE/fft_xy.f90

    r1258 r1304  
    2020! Current revisions:
    2121! -----------------
    22 !
     22! openmp bugfix: work1 used in Temperton algorithm must be private
    2323!
    2424! Former revisions:
     
    412412          IF ( forward_fft )  THEN
    413413
    414              !$OMP PARALLEL PRIVATE ( work, i, j, k )
     414             !$OMP PARALLEL PRIVATE ( work, work1, i, j, k )
    415415             !$OMP DO
    416416             DO  k = nzb_x, nzt_x
     
    433433          ELSE
    434434
    435              !$OMP PARALLEL PRIVATE ( work, i, j, k )
     435             !$OMP PARALLEL PRIVATE ( work, work1, i, j, k )
    436436             !$OMP DO
    437437             DO  k = nzb_x, nzt_x
     
    10361036          IF ( forward_fft )  THEN
    10371037
    1038              !$OMP PARALLEL PRIVATE ( work, i, j, k )
     1038             !$OMP PARALLEL PRIVATE ( work, work1, i, j, k )
    10391039             !$OMP DO
    10401040             DO  k = nzb_y, nzt_y
     
    10571057          ELSE
    10581058
    1059              !$OMP PARALLEL PRIVATE ( work, i, j, k )
     1059             !$OMP PARALLEL PRIVATE ( work, work1, i, j, k )
    10601060             !$OMP DO
    10611061             DO  k = nzb_y, nzt_y
  • palm/trunk/SOURCE/init_pegrid.f90

    r1213 r1304  
    356356!-- 1. transposition  z --> x
    357357!-- This transposition is not neccessary in case of a 1d-decomposition along x
     358    nys_x = nys
     359    nyn_x = nyn
     360    nny_x = nny
     361    nnz_x = nz / pdims(1)
     362    nzb_x = 1 + myidx * nnz_x
     363    nzt_x = ( myidx + 1 ) * nnz_x
     364    sendrecvcount_zx = nnx * nny * nnz_x
     365
    358366    IF ( pdims(2) /= 1 )  THEN
    359 
    360        nys_x = nys
    361        nyn_x = nyn
    362        nny_x = nny
    363367       IF ( MOD( nz , pdims(1) ) /= 0 )  THEN
    364368          WRITE( message_string, * ) 'transposition z --> x:',                &
     
    367371          CALL message( 'init_pegrid', 'PA0230', 1, 2, 0, 6, 0 )
    368372       ENDIF
    369        nnz_x = nz / pdims(1)
    370        nzb_x = 1 + myidx * nnz_x
    371        nzt_x = ( myidx + 1 ) * nnz_x
    372        sendrecvcount_zx = nnx * nny * nnz_x
    373 
    374     ELSE
    375 !
    376 !---   Setting of dummy values because otherwise variables are undefined in
    377 !---   the next step  x --> y
    378 !---   WARNING: This case has still to be clarified!!!!!!!!!!!!
    379        nnz_x = 1
    380        nzb_x = 1
    381        nzt_x = 1
    382        nny_x = nny
    383 
    384373    ENDIF
    385374
     
    403392!-- 3. transposition  y --> z  (ELSE:  x --> y  in case of 1D-decomposition
    404393!-- along x)
     394    nnx_z = nnx_y
     395    nxl_z = nxl_y
     396    nxr_z = nxr_y
     397    nny_z = (ny+1) / pdims(1)
     398    nys_z = myidx * nny_z
     399    nyn_z = ( myidx + 1 ) * nny_z - 1
     400    sendrecvcount_yz = nnx_y * nny_z * nnz_y
     401
    405402    IF ( pdims(2) /= 1 )  THEN
    406403!
     
    408405!--    This transposition is not neccessary in case of a 1d-decomposition
    409406!--    along x, except that the uptream-spline method is switched on
    410        nnx_z = nnx_y
    411        nxl_z = nxl_y
    412        nxr_z = nxr_y
    413407       IF ( MOD( ny+1 , pdims(1) ) /= 0 )  THEN
    414408          WRITE( message_string, * ) 'transposition y --> z:',            &
     
    417411          CALL message( 'init_pegrid', 'PA0232', 1, 2, 0, 6, 0 )
    418412       ENDIF
    419        nny_z = (ny+1) / pdims(1)
    420        nys_z = myidx * nny_z
    421        nyn_z = ( myidx + 1 ) * nny_z - 1
    422        sendrecvcount_yz = nnx_y * nny_z * nnz_y
    423413
    424414    ELSE
Note: See TracChangeset for help on using the changeset viewer.