4.2.1. Options bundles
The makefile hierarchy includes files that implement the Option groups bundles referred to in the User Guide. Specifically, these bundles are defined in:
config/compilers/{gcc,ifort,ifc,nvhpc,...}/Makefile
config/compilers/{gcc,ifort,ifc,nvhpc,...}/debug.mkf
...
config/compilers/{gcc,ifort,ifc,nvhpc,...}/optimized.mkf
The OPTS=devel bundles are chosen as a compromise
between compile time and performance; they generally give close to optimal
performance, so are suitable for shorter runs and for development.
To get the best performance, compile with make OPTS=optimized, which typically
gives a gain of a few percent in performance, at the cost of increased compilation time.
If the code crashes, try recompiling with make OPTS=full_debug or
make OPTS=debug. The first provides comprehensive debug settings,
while impacting performance significantly, while the 2nd avoids the particular
options that impact performance the most.
To quickly check for syntax issues, use make OPTS=quick -j.
A make clean is generally only needed in connection with changing compiler
version, e.g. as result of explicitly choosing a non-default module, or
if the actual compiler default version changes.