Closed diehlpk closed 1 year ago
Just as an example, here is what FLASH code outputs to its log file. The version number, the c and fortran flags, as well as the parameters used and whether they were changed or used the default value.
Interestingly, it also outputs FLASH counters and timers for each unit which would be also nice to have in Octo-Tiger
@diehlpk Can this be closed now that #445 is merged or do you need more information in the log?
Thanks @G-071!
Can something like what FLASH outputs (see below) be also added to the output (or maybe is it already there)?
Number of MPI tasks: 1
MPI version: 3
MPI subversion: 1
Dimensionality: 2
Max Number of Blocks/Proc: 10000
Number x zones: 8
Number y zones: 8
Number z zones: 1
Setup stamp: Tue Jul 30 16:08:04 2019
Build stamp: Tue Jul 30 16:33:55 2019
System info: Darwin Sagivs-Air 17.7.0 Darwin Kernel Version 17.7.0: Sun Jun 2 20:31:42 PDT 2
Version: FLASH 4.6_release
Build directory: /Users/shiber/FLASH4.6/Sod_diag_ref7
Setup syntax: /Users/shiber/FLASH4.6/bin/setup.py Sod -auto -objdir=Sod_diag_ref7 -maxblocks=10000
f compiler flags: /usr/local/opt/mpich/bin//mpif90 -c -O2 -fdefault-real-8 -fdefault-double-8 -DMAXBLOCKS=10000 -DNXB=8 -DNYB=8 -DNZB=1 -DN_DIM=2
c compiler flags: /usr/local/opt/mpich/bin//mpicc -I /usr/local/opt/hdf5/include -DH5_USE_16_API -O2 -c -DMAXBLOCKS=10000 -DNXB=8 -DNYB=8 -DNZB=1 -DN_DIM=2 -DDarwin
I think a lot of it is already there, at least in Kokkos builds as the Kokkos::print_configuration also includes all the HPX details. Since #445 we also print the version. As for the the "Setup syntax", I think that stuff was already printed in octotiger for a long time, however it's a bit scattered at the beginning of Octo-Tiger's output.
What might be handy to have (for quick copy/paste) is to explicitly print one line with all CLI args that were passed, which would save us the trouble of piecing that together from the rest of Octo-Tiger's output. The system info is also missing
It would be nice to add the git hash of Octo-Tiger to the output, so we could see in the log which version we used for reproducibility.