Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Configuration

Options for configure.sh and the ALF build system.

configure.sh Usage

source configure.sh <MACHINE> [MODE] [STAB] [options...]

You must source (not execute) this script — it sets environment variables that the Makefile reads. Arguments are case-insensitive and order-independent (except MACHINE must come first or be the only positional argument).

Machine / Compiler

MACHINECompilerLinear AlgebraNotes
GNUgfortran / mpifort-llapack -lblasMost common for local builds
Intelifort / mpiifortMKL (-qmkl or -mkl)Classic Intel Fortran
IntelLLVM or IntelXifx / mpiifort -fc=ifxMKL (-qmkl)New LLVM-based Intel Fortran
PGIpgfortran / mpifort-llapack -lblasNVIDIA/PGI compilers
SuperMUC-NGmpiifortMKLAuto-loads LRZ modules
JUWELSmpiifortMKLAuto-loads JSC modules
FRITZIntel (auto-detected)MKLAuto-loads NHR@FAU modules

If MACHINE is unrecognized, ALF falls back to gfortran serial mode.

Build Mode

MODEPreprocessor FlagsDescription
MPI (default)-DMPIMPI parallelization across bins
noMPI(none)Serial execution
Tempering-DMPI -DTEMPERINGParallel tempering (requires MPI)
PP or PARALLEL_PARAMS-DMPI -DTEMPERING -DPARALLEL_PARAMSParallel runs with different parameters (requires MPI)

Stabilization Scheme

STABFlagDescription
(default)(none)Standard stabilization
STAB1-DSTAB1Older UDV decomposition
STAB2-DSTAB2UDV with additional normalizations
STAB3-DSTAB3Newest: separates large and small scales
LOG-DSTABLOGLog storage for internal scales — extends accessible parameter ranges (β\beta, interaction strength)

See [[Stabilization Parameters]] for guidance on choosing a scheme.

Optional Flags

FlagEffect
HDF5Enable HDF5 output. ALF auto-installs HDF5 locally if not yet built for the current compiler.
DevelEnable development/debug flags: warnings, bounds checking, backtraces
NO-INTERACTIVESuppress interactive prompts (e.g., auto-accept HDF5 download). Useful in scripts.
NO-FALLBACKReturn error instead of falling back to serial gfortran for unknown machines

Custom Compiler Flags

To pass additional flags to the compiler:

export ALF_FLAGS_EXT="-my-flag"
source configure.sh GNU MPI

Custom HDF5 Directory

By default, ALF installs HDF5 into ALF/HDF5/<compiler_version>/. To override:

export ALF_HDF5_DIR=/path/to/custom/hdf5
source configure.sh GNU MPI HDF5

Environment Variables Set by configure.sh

After sourcing, these are exported and used by make:

VariablePurpose
ALF_DIRRoot directory of ALF
ALF_FCFortran compiler command
ALF_FLAGS_PROGCompiler flags for the main program
ALF_FLAGS_MODULESCompiler flags for library modules
ALF_FLAGS_ANACompiler flags for analysis tools
ALF_FLAGS_QRREFCompiler flags for QR library
ALF_LIBLinker flags (libraries)

Compiler-Specific Notes

GNU (gfortran)

Intel Classic (ifort)

Intel LLVM (ifx)

Common Recipes

# Local development (serial, debug checks, fast iteration)
source configure.sh GNU noMPI devel

# Production run (MPI + HDF5)
source configure.sh GNU MPI HDF5

# Parallel tempering
source configure.sh GNU Tempering HDF5

# Non-interactive (CI/scripting)
source configure.sh GNU MPI HDF5 NO-INTERACTIVE