RTD "getting started" suggestions
I'm going through the "Getting Started" section of the RTD. I've noticed some things that in my opinion could be improved.
- There are some formatting issues:
E.g. In Compiling SWIFT/Optional Dependencies
, we have
There are also the following _optional_ dependencies.
I think _optional_
is intended to be italic, not have enclosing underlines.
In Command line options
, the last sentence is
See the file examples/parameter_example.yml for an example of parameter file.
the file name should have inline code format.
- In the section "What about MPI? Running SWIFT on more than one node", we write
You will need some GADGET-2 HDF5 initial conditions to run SWIFT, as well as a compatible yaml parameter file.
Three points here:
- I think it would be better to call it "initial conditions in the GADGET-2 HDF5 file format"
- We should add a reference to what that format is. Either to somewhere in the docs itself, or to some external reference. Does anyone have a reference where the GADGET-2 file format is defined?
- Same for yaml parameter file: We should cross-reference this to the corresponding section of the docs.
- Section "Running on Large Systems":
We don't mention hyperthreading. According to a recent discussion on slack, hyperthreading is recommended. We should note that somewhere. Secondly, I think the choice to use both 16 nodes and 16 cores per chip is a bit unfortunate. To make things clear, I'd change the number of nodes. E.g.
Your batch script should look something like the following (to run on 8 nodes each with 2x18 core processors for a total of 288 cores):
#SBATCH -N 8 # Number of nodes to run on
#SBATCH --tasks-per-node=2 # This system has 2 chips per node
mpirun -np 16 swift_mpi --threads=18 --pin parameter.yml
And add instructions for hyperthreading:
It is also recommended to run with hyperthreading enabled, if your system and hardware allows it. Your batch script should look something like the following (to run on 8 nodes each with 2x18 core processors for a total of 288 cores, with hyperthreading)
#SBATCH -N 8 # Number of nodes to run on
#SBATCH --tasks-per-node=2 # This system has 2 chips per node
mpirun -np 16 swift_mpi --threads=36 --pin parameter.yml
I'd be willing to adapt the changes and push a MR, but I wanted to check in with you for approval first. @matthieu , @pdraper , @jborrow , any thoughts?