subroutine time_spent_on_particles() use mod_timing use mod_global_parameters double precision :: tpartc_avg, tpartc_int_avg, tpartc_io_avg,& tpartc_com_avg, tpartc_grid_avg call MPI_REDUCE(tpartc,tpartc_avg,1,MPI_DOUBLE_PRECISION,MPI_SUM,0,icomm,& ierrmpi) call MPI_REDUCE(tpartc_int,tpartc_int_avg,1,MPI_DOUBLE_PRECISION,MPI_SUM,0,& icomm,ierrmpi) call MPI_REDUCE(tpartc_io,tpartc_io_avg,1,MPI_DOUBLE_PRECISION,MPI_SUM,0,& icomm,ierrmpi) call MPI_REDUCE(tpartc_com,tpartc_com_avg,1,MPI_DOUBLE_PRECISION,MPI_SUM,0,& icomm,ierrmpi) call MPI_REDUCE(tpartc_grid,tpartc_grid_avg,1,MPI_DOUBLE_PRECISION,MPI_SUM,& 0,icomm,ierrmpi) if (mype ==0) then tpartc_avg = tpartc_avg/dble(npe) tpartc_int_avg = tpartc_int_avg/dble(npe) tpartc_io_avg = tpartc_io_avg/dble(npe) tpartc_com_avg = tpartc_com_avg/dble(npe) tpartc_grid_avg = tpartc_grid_avg/dble(npe) write(*,'(a,f12.3,a)')' Particle handling took : ',tpartc,' sec' write(*,'(a,f12.2,a)')' Percentage: ',& 100.0d0*tpartc/(timeloop+smalldouble),' %' write(*,'(a,f12.3,a)')' Particle IO took : ',tpartc_io_avg,& ' sec' write(*,'(a,f12.2,a)')' Percentage: ',& 100.0d0*tpartc_io_avg/(timeloop+smalldouble),' %' write(*,'(a,f12.3,a)')' Particle COM took : ',tpartc_com_avg,& ' sec' write(*,'(a,f12.2,a)')' Percentage: ',& 100.0d0*tpartc_com_avg/(timeloop+smalldouble),' %' write(*,'(a,f12.3,a)')' Particle integration took : ',tpartc_int_avg,& ' sec' write(*,'(a,f12.2,a)')' Percentage: ',& 100.0d0*tpartc_int_avg/(timeloop+smalldouble),' %' write(*,'(a,f12.3,a)')' Particle init grid took : ',tpartc_grid_avg,& ' sec' write(*,'(a,f12.2,a)')' Percentage: ',& 100.0d0*tpartc_grid_avg/(timeloop+smalldouble),' %' end if end subroutine time_spent_on_particles