output to logfile helfulf for debug, especially with MPI
This commit is contained in:
parent
ad8758b340
commit
2cf904fe49
|
@ -70,9 +70,8 @@ subroutine DAMASK_interface_init
|
|||
external :: &
|
||||
quit
|
||||
|
||||
print'(/,1x,a)', '<<<+- DAMASK_interface init -+>>>'
|
||||
|
||||
if(worldrank == 0) open(OUTPUT_UNIT, encoding='UTF-8') ! for special characters in output
|
||||
print'(/,1x,a)', '<<<+- DAMASK_interface init -+>>>'
|
||||
|
||||
! http://patorjk.com/software/taag/#p=display&f=Lean&t=DAMASK%203
|
||||
#ifdef DEBUG
|
||||
|
|
|
@ -86,7 +86,18 @@ subroutine parallelization_init
|
|||
if (err_MPI /= 0_MPI_INTEGER_KIND) &
|
||||
error stop 'Could not determine worldrank'
|
||||
|
||||
if (worldrank == 0) then
|
||||
#ifdef LOGFILE
|
||||
write(rank_str,'(i4.4)') worldrank
|
||||
open(OUTPUT_UNIT,file='log.'//rank_str,status='replace',encoding='UTF-8')
|
||||
#else
|
||||
if (worldrank /= 0) then
|
||||
close(OUTPUT_UNIT) ! disable output
|
||||
open(OUTPUT_UNIT,file='/dev/null',status='replace') ! close() alone will leave some temp files in cwd
|
||||
else
|
||||
open(OUTPUT_UNIT,encoding='UTF-8') ! for special characters in output
|
||||
endif
|
||||
#endif
|
||||
|
||||
print'(/,1x,a)', '<<<+- parallelization init -+>>>'
|
||||
|
||||
call MPI_Get_library_version(MPI_library_version,devNull,err_MPI)
|
||||
|
@ -96,7 +107,6 @@ subroutine parallelization_init
|
|||
#ifdef _OPENMP
|
||||
print'(1x,a,i0)', 'OpenMP version: ',openmp_version
|
||||
#endif
|
||||
end if
|
||||
|
||||
call MPI_Comm_size(MPI_COMM_WORLD,worldsize,err_MPI)
|
||||
if (err_MPI /= 0_MPI_INTEGER_KIND) &
|
||||
|
@ -121,12 +131,6 @@ subroutine parallelization_init
|
|||
if (typeSize*8_MPI_INTEGER_KIND /= int(storage_size(0.0_pReal),MPI_INTEGER_KIND)) &
|
||||
error stop 'Mismatch between MPI_DOUBLE and DAMASK pReal'
|
||||
|
||||
if (worldrank /= 0) then
|
||||
close(OUTPUT_UNIT) ! disable output
|
||||
write(rank_str,'(i4.4)') worldrank ! use for MPI debug filenames
|
||||
open(OUTPUT_UNIT,file='/dev/null',status='replace') ! close() alone will leave some temp files in cwd
|
||||
endif
|
||||
|
||||
!$ call get_environment_variable(name='OMP_NUM_THREADS',value=NumThreadsString,STATUS=got_env)
|
||||
!$ if(got_env /= 0) then
|
||||
!$ print'(1x,a)', 'Could not get $OMP_NUM_THREADS, using default'
|
||||
|
|
Loading…
Reference in New Issue