GLOBAL
Section with general information on which kind of simulation to perform and parameters for the whole PROGRAM [Edit on GitHub]
Subsections
Keywords
Keyword descriptions
- ALLTOALL_SGL
Type: logical
Default: F
Lone keyword: T
Usage: ALLTOALL_SGL YESDescription: All-to-all communication (FFT) should use single precision
- BLACS_GRID
Type: enum
Default: SQUARE
Usage: BLACS_GRID SQUAREDescription: how to distribute the processors on the 2d grid needed by BLACS (and thus SCALAPACK)
Valid values:
SQUAREDistribution by matrix blocksROWDistribution by matrix rowsCOLUMNDistribution by matrix columns
- BLACS_REPEATABLE
Type: logical
Default: F
Lone keyword: T
Usage: BLACS_REPEATABLEDescription: Use a topology for BLACS collectives that is guaranteed to be repeatable on homogeneous architectures
- CALLGRAPH
Type: enum
Default: NONE
Lone keyword: MASTER
Usage: CALLGRAPH {NONE|MASTER|ALL}Description: At the end of the run write a callgraph to file, which contains detailed timing informations. This callgraph can be viewed e.g. with the open-source program kcachegrind.
Valid values:
NONENo callgraph gets writtenMASTEROnly the master process writes his callgraphALLAll processes write their callgraph (into a separate files).
- CALLGRAPH_FILE_NAME
Type: string
Usage: CALLGRAPH_FILE_NAME {filename}Description: Name of the callgraph file, which is written at the end of the run. If not specified the project name will be used as filename.
- DIRECT_GENERALIZED_DIAGONALIZATION
Type: logical
Default: F
Lone keyword: T
Usage: DIRECT_GENERALIZED_DIAGONALIZATIONDescription: Request direct generalized eigenvalue problem diagonalization without a CP2K-side Cholesky reduction in supported dense matrix paths. The eigensolver is still selected by PREFERRED_DIAG_LIBRARY.
- DLAF_CHOLESKY_N_MIN
Type: integer
Default: 1024
Usage: DLAF_CHOLESKY_N_MIN 512Description: Minimum matrix size for the use of the Cholesky decomposition from the DLA-Future library. The Cholesky decomposition from the ScaLAPACK library is used as fallback for all smaller cases
Mentions: ⭐DLA-Future
- DLAF_NEIGVEC_MIN
Type: integer
Default: 1024
Usage: DLAF_NEIGVEC_MIN 512Description: Minimum number of eigenvectors for the use of the eigensolver from the DLA-Future library. The eigensolver from the ScaLAPACK library is used as fallback for all smaller cases
Mentions: ⭐DLA-Future
- ECHO_ALL_HOSTS
Type: logical
Default: F
Lone keyword: T
Usage: ECHO_ALL_HOSTS NODescription: Echo a list of hostname and pid for all MPI processes.
- ECHO_INPUT
Type: logical
Default: F
Lone keyword: T
Usage: ECHO_INPUT NODescription: If the input should be echoed to the output with all the defaults made explicit
- ELPA_KERNEL
Type: enum
Default: AUTODescription: Specifies the kernel to be used when ELPA is in use
Valid values:
AUTOAutomatically selected kernelGENERICGeneric kernelGENERIC_SIMPLESimplified generic kernelBGPKernel optimized for IBM BGPBGQKernel optimized for IBM BGQSSEKernel optimized for x86_64/SSESSE_BLOCK2Kernel optimized for x86_64/SSE (block=2)SSE_BLOCK4Kernel optimized for x86_64/SSE (block=4)SSE_BLOCK6Kernel optimized for x86_64/SSE (block=6)AVX_BLOCK2Kernel optimized for Intel AVX (block=2)AVX_BLOCK4Kernel optimized for Intel AVX (block=4)AVX_BLOCK6Kernel optimized for Intel AVX (block=6)AVX2_BLOCK2Kernel optimized for Intel AVX2 (block=2)AVX2_BLOCK4Kernel optimized for Intel AVX2 (block=4)AVX2_BLOCK6Kernel optimized for Intel AVX2 (block=6)AVX512_BLOCK2Kernel optimized for Intel AVX-512 (block=2)AVX512_BLOCK4Kernel optimized for Intel AVX-512 (block=4)AVX512_BLOCK6Kernel optimized for Intel AVX-512 (block=6)NVIDIA_GPUKernel targeting Nvidia GPUsAMD_GPUKernel targeting AMD GPUsINTEL_GPUKernel targeting Intel GPUs
- ELPA_NEIGVEC_MIN
Type: integer
Default: 64
Usage: ELPA_NEIGVEC_MIN 32Description: Minimum number of eigenvectors for the use of the eigensolver from the ELPA library. The eigensolver from the ScaLAPACK library is used as fallback for all smaller cases
- ELPA_ONE_STAGE
Type: logical
Default: F
Lone keyword: T
Usage: ELPA_ONE_STAGEDescription: For ELPA, enable the one-stage solver (instead of the two-stage solver). Please note, ELPA_QR and ELPA_KERNEL settings may be ignored.
- ELPA_PRINT
Type: logical
Default: F
Lone keyword: T
Usage: ELPA_PRINTDescription: Controls the printing of ELPA diagonalization information. Useful for testing purposes, especially together with keyword ELPA_QR.
- ELPA_QR
Type: logical
Default: F
Lone keyword: T
Usage: ELPA_QRDescription: For ELPA, enable a blocked QR step when reducing the input matrix to banded form before diagonalization. Requires ELPA version 201505 or newer and is automatically deactivated otherwise. QR is activated only when the matrix size is suitable. Keyword ELPA_PRINT helps identify suitable cases. Can accelerate diagonalization for suitable matrices.
- ENABLE_MPI_IO
Type: logical
Default: T
Lone keyword: T
Usage: ENABLE_MPI_IO FALSEDescription: Enable MPI parallelization for all supported I/O routines Currently, only cube file writer/reader routines use MPI I/O. Disabling this flag might speed up calculations dominated by I/O.
- EPS_CHECK_DIAG
Type: real
Default: -1.00000000E+000
Usage: EPS_CHECK_DIAG 1.0E-14Description: Check that the orthonormality of the eigenvectors after a diagonalization fulfills the specified numerical accuracy. A negative threshold value disables the check.
- EXTENDED_FFT_LENGTHS
Type: logical
Default: F
Lone keyword: T
Usage: EXTENDED_FFT_LENGTHSDescription: Use fft library specific values for the allows number of points in FFTs. The default is to use the internal FFT lengths. For external fft libraries this may create an error at the external library level, because the length provided by cp2k is not supported by the external library. In this case switch on this keyword to obtain, with certain fft libraries, lengths matching the external fft library lengths, or larger allowed grids, or grids that more precisely match a given cutoff. IMPORTANT NOTE: in this case, the actual grids used in CP2K depends on the FFT library. A change of FFT library must therefore be considered equivalent to a change of basis, which implies a change of total energy.
Mentions: ⭐Troubleshooting
- FFTW_PLAN_TYPE
Type: enum
Default: ESTIMATE
Usage: FFTW_PLAN_TYPE PATIENTDescription: FFTW can have improved performance if it is allowed to plan with explicit measurements which strategy is best for a given FFT. While a plan based on measurements is generally faster, differences in machine load will lead to different plans for the same input file, and thus numerics for the FFTs will be slightly different from run to run. PATIENT planning is recommended for long ab initio MD runs.
Valid values:
ESTIMATEQuick estimate, no runtime measurements.MEASUREQuick measurement, somewhat faster FFTs.PATIENTMeasurements trying a wider range of possibilities.EXHAUSTIVEMeasurements trying all possibilities - use with caution.
References: Frigo2005
- FFTW_WISDOM_FILE_NAME
Type: string
Default: /etc/fftw/wisdom
Usage: FFTW_WISDOM_FILE_NAME wisdom.datDescription: The name of the file that contains wisdom (pre-planned FFTs) for use with FFTW3. Using wisdom can significantly speed up the FFTs (see the FFTW homepage for details). Note that wisdom is not transferable between different computer (architectures). Wisdom can be generated using the fftw-wisdom tool that is part of the fftw installation. cp2k/tools/cp2k-wisdom is a script that contains some additional info, and can help to generate a useful default for /etc/fftw/wisdom or particular values for a given simulation.
- FFT_POOL_SCRATCH_LIMIT
Type: integer
Default: 15
Usage: FFT_POOL_SCRATCH_LIMIT {INTEGER}Description: Limits the memory usage of the FFT scratch pool, potentially reducing efficiency a bit
- FLUSH_SHOULD_FLUSH
Type: logical
Default: T
Lone keyword: T
Usage: FLUSH_SHOULD_FLUSHDescription: Flush output regularly, enabling this option might degrade performance significantly on certain machines.
- OUTPUT_FILE_NAME
Type: string
Usage: OUTPUT_FILE_NAME {filename}Description: Name of the output file. Relevant only if automatically started (through farming for example). If empty uses the project name as basis for it.
- PREFERRED_CHOLESKY_LIBRARY
Type: enum
Default: SCALAPACK
Usage: PREFERRED_CHOLESKY_LIBRARY DLAFDescription: Specifies Cholesky decomposition library to be used. If not available, the ScaLAPACK library is used
Valid values:
SCALAPACKScaLAPACK librarySLScaLAPACK library (shorthand)DLAFDLA-Future (CUDA/HIP GPU library)
Mentions: ⭐DLA-Future
- PREFERRED_DGEMM_LIBRARY
Type: enum
Default: BLAS
Usage: PREFERRED_DGEMM_LIBRARY SPLADescription: Specifies the DGEMM library to be used. If not available, the BLAS routine is used. This keyword affects some DGEMM calls in the WFC code and turns on their acceleration with SpLA. This keyword affects only local DGEMM calls, not the calls to PDGEMM (see keyword FM%TYPE_OF_MATRIX_MULTIPLICATION).
Valid values:
SPLASPLA libraryBLASBLAS library
- PREFERRED_DIAG_LIBRARY
Type: enum
Default: ELPA
Usage: PREFERRED_DIAG_LIBRARY ELPADescription: Specifies the diagonalization library to be used. If not available, the ScaLAPACK library is used
Valid values:
ELPAELPA librarySCALAPACKScaLAPACK librarySLScaLAPACK library (shorthand)CUSOLVERcuSOLVER (CUDA GPU library)DLAFDLA-Future (CUDA/HIP GPU library)
Mentions: ⭐Troubleshooting, ⭐DLA-Future
- PREFERRED_FFT_LIBRARY
Type: enum
Default: FFTW3
Usage: PREFERRED_FFT_LIBRARY FFTW3Description: Specifies the FFT library which should be preferred. If it is not available, use FFTW3 if this is linked in, if FFTW3 is not available use FFTSG. Improved performance with FFTW3 can be obtained specifying a proper value for FFTW_PLAN_TYPE. Contrary to earlier CP2K versions, all libraries will result in the same grids, i.e. the subset of grids which all FFT libraries can transform. See EXTENDED_FFT_LENGTHS if larger FFTs or grids that more precisely match a given cutoff are needed, or older results need to be reproduced. FFTW3 is often (close to) optimal, and well tested with CP2K.
Valid values:
FFTSGStefan Goedecker’s FFT (FFTSG), always available, will be used in case a FFT library is specified and not available.FFTW3a fast portable FFT library. Recommended. See also the FFTW_PLAN_TYPE, and FFTW_WISDOM_FILE_NAME keywords.FFTWSame as FFTW3 (for compatibility with CP2K 2.3)
References: Frigo2005
Mentions: ⭐Troubleshooting
- PRINT_LEVEL
Type: enum
Default: MEDIUM
Aliases: IOLEVEL
Usage: PRINT_LEVEL HIGHDescription: How much output is written out.
Valid values:
SILENTAlmost no outputLOWLittle outputMEDIUMQuite some outputHIGHLots of outputDEBUGEverything is written out, useful for debugging purposes only
Mentions: ⭐How to Converge the CUTOFF and REL_CUTOFF, ⭐HFX-RI with k-Points
- PROGRAM_NAME
Type: enum
Default: CP2K
Aliases: PROGRAM
Usage: PROGRAM_NAME {STRING}Description: Which program should be run
Valid values:
ATOMRuns single atom calculationsFARMINGRuns N independent jobs in a single runTESTDo some benchmarking and testingCP2KRuns one of the CP2K packageOPTIMIZE_INPUTA tool to optimize parameters in a CP2K inputOPTIMIZE_BASISA tool to create a MOLOPT or ADMM basis for a given set of training structuresTMCRuns Tree Monte Carlo algorithm using additional input file(s)MC_ANALYSISRuns (Tree) Monte Carlo trajectory file analysisSWARMRuns swarm based calculation
- PROJECT_NAME
Type: string
Default: PROJECT
Aliases: PROJECT
Usage: PROJECT_NAME {STRING}Description: Name of the project (used to build the name of the trajectory, and other files generated by the program)
Mentions: ⭐Molecular Dynamics
- RUN_TYPE
Type: enum
Default: ENERGY_FORCE
Usage: RUN_TYPE MDDescription: Selects the top-level task CP2K should run, such as an energy, energy-and-force, molecular dynamics, geometry optimization, or response calculation.
Valid values:
NONEPerform no tasksENERGYComputes energyENERGY_FORCEComputes energy and forcesMDMolecular DynamicsGEO_OPTGeometry OptimizationMCMonte CarloDEBUGPerforms a Debug analysisBSSEBasis set superposition errorLRLinear ResponsePINTPath integralVIBRATIONAL_ANALYSISVibrational analysisBANDBand methodsCELL_OPTCell optimization. Both cell vectors and atomic positions are optimised.WFN_OPTAlias for ENERGYWAVEFUNCTION_OPTIMIZATIONAlias for ENERGYMOLECULAR_DYNAMICSAlias for MDGEOMETRY_OPTIMIZATIONAlias for GEO_OPTMONTECARLOAlias for MCLINEAR_RESPONSEAlias for LRNORMAL_MODESAlias for VIBRATIONAL_ANALYSISRT_PROPAGATIONReal Time propagation run (fixed ionic positions)EHRENFEST_DYNEhrenfest dynamics (using real time propagation of the wavefunction)TAMCTemperature Accelerated Monte Carlo (TAMC)TMCTree Monte Carlo (TMC), a pre-sampling MC algorithmDRIVERi-PI driver modeNEGFNon-equilibrium Green’s function methodMIMICRun as a client in a simulation through the MiMiC frameworkRTPAlias for RT_PROPAGATIONMTLRMinimum tracking linear response calculation for Hubbard U and Hund’s J
References: Ceriotti2014, Schonherr2014
Mentions: ⭐Run a First Calculation, ⭐How to Converge the CUTOFF and REL_CUTOFF, ⭐Band structure from GW, ⭐Geometry and cell optimization, ⭐GW + Bethe-Salpeter equation, ⭐Time-Dependent DFT, ⭐Simulating Vibronic Effects in Optical Spectra, ⭐X-Ray Absorption from TDDFT, ⭐Real-Time Propagation and Ehrenfest MD, ⭐Molecular Dynamics, ⭐Monte Carlo
- SAVE_MEM
Type: logical
Default: F
Lone keyword: T
Usage: SAVE_MEMDescription: Some sections of the input structure are deallocated when not needed, and reallocated only when used. This reduces the required maximum memory.
- SEED
Type: integer[ ]
Default: 2000
Usage: SEED {INTEGER} .. {INTEGER}Description: Initial seed for the global (pseudo)random number generator to create a stream of normally Gaussian distributed random numbers. Exactly 1 or 6 positive integer values are expected. A single value is replicated to fill up the full seed array with 6 numbers.
- TRACE
Type: logical
Default: F
Lone keyword: T
Usage: TRACEDescription: If a debug trace of the execution of the program should be written
- TRACE_MASTER
Type: logical
Default: T
Lone keyword: T
Usage: TRACE_MASTERDescription: For parallel TRACEd runs: only the master node writes output.
- TRACE_MAX
Type: integer
Default: 2147483647
Usage: TRACE_MAX 100Description: Limit the total number a given subroutine is printed in the trace. Accounting is not influenced.
- TRACE_ROUTINES
Type: string[ ]
Usage: TRACE_ROUTINES {routine_name1} {routine_name2} …Description: A list of routines to trace. If left empty all routines are traced. Accounting is not influenced.
- WALLTIME
Type: string
Aliases: WALLTI
Usage: WALLTIME {real} or {HH:MM:SS}Description: Maximum execution time for this run. Time in seconds or in HH:MM:SS.
Mentions: ⭐Geometry and cell optimization