2.1 Options

Most options are not required, since sensible system defaults are usually set. Options as detailed below may be given, in order of decreasing priority, on the command line, in the environment variable MOLPRO_OPTIONS, or in the files ./molpro.rc, $HOME/.molprorc, and tuning.rc in the library files directory.

-d dir1:dir2:$\dots$
where dir1:dir2:$\dots$ is a list of directories which may be used for creating scratch files. Each of the directories should be writable by those who will use the program, and the directory specification may contain embedded environment variables in shell form, for example $TMPDIR or /tmp/$USER; these will be expanded at run time. If multiple scratch file systems are available, it is advantageous to present a list of directories of which there is one in each file system. Some parts of MOLPRO present extreme I/O demands, and it is therefore important to be careful in optimizing the provision and specification of scratch directories.

Note that in the building of bin/molpro, the environment variables $TMPDIR, $TMPDIR2, $TMPDIR3,$\dots$ are used to construct the list of scratch directories for the -d option. Thus, these environment variables should at make time be filled with the names of directories on each available scratch file system (cf. section A.2.3).

-o $\vert$ --output outfile
specifies a different output file.
-x $\vert$ --executable executable
specifies an alternative MOLPRO executable file.
-d $\vert$ --directory directory1: directory2$\dots$
specifies a list of directories in which the program will place scratch files. For detailed discussion of optimal specification, see the installation guide.
--backup nfile
enables the saving of previous output files, up to a maximum of nfile. If nfile is omitted, it defaults to infinity. The names of the backup files are constructed by appending _ and a sequence number to the output file name, and both regular and xml-format files are processed, together with any log file.
-a $\vert$ --append-backup
Previous output files are concatenated by appending, instead of being kept separate.
Backup files are stored in a single separate subdirectory, named datafile.d, with subdirectories 01, 02, $\dots$. --directory-backup and --append-backup are mutually exclusive, and switching one of them on will force the other to be switched off.
--backup-directory dir
In the case of --directory-backup, use dir as the location of backup files instead of the default.
-s $\vert$ --nobackup
disables the mechanism whereby an existing output file is saved.
-v $\vert$ --verbose
causes the procedure to echo debugging information; --noverbose selects quiet operation (default).
-k key
where key is the licence key. This is normally not necessary since the key should be installed globally when installing MOLPRO.
-m $\vert$ --memory memory
specifies the working memory to be assigned to the program, in 8-byte words. For details, see section 4.6.

-I $\vert$ --main-file-repository directory
specifies the directory where the permanent copy of any integral file (file 1) resides. This may be a pathname which is absolute or relative to the current directory (e.g., '.' would specify the current directory). Normally, the -I directory should be equal to the -d working directory to avoid copying of large integral files, since after completion of the job the file will be copied to the directory given after -I. On some main frames, the scratch directory is erased automatically after a job has terminated, and in such cases a different -I directory, e.g., $HOME/int, can be specified (environment variables will be expanded at run time). In view of the large integral file sizes, this should be used with care, however. Note that in parallel runs with more than 1 processor the integral file will never be copied, and cannot be restarted.

-W $\vert$ --wavefunction-file-repository directory
is similar to --main-file-repository except that it refers to the directory for the wavefunction files (2,3 and 4). This determines the destination of permanent wavefunction (dump) files used for storing information like orbitals or CI-vectors etc. These files are essential for restarting a job. As explained for the integral files above, permanent wavefunction files will be copied to directory after completion of the job. The default for directory is $HOME/wfu.

-X $\vert$ --xml-output
specifies that the output file will be a well-formed XML file suitable for automatic post-processing. Important data such as input, geometries, and results are tagged, and the bulk of the normal descriptive output is wrapped as XML comments. --no-xml-output switches off this behaviour and forces a plain-text output file to be produced.
-L $\vert$ --library directory
specifies the directory where the basis set library files (LIBMOL*) are found.
-1 $\vert$ --file-1-directory directory:directory:$\ldots$
specifies the directory where the runtime file 1 will be placed, overriding --directory for this file only. -2, -3, -4, -5, -6, -7, -8 and -9 may be used similarly. Normally these options should not be given, since the program tries to use what is given in -d to optimally distribute the I/O.

-t $\vert$ --omp-num-threads n
Specify the number of OpenMP threads, as if the environment variable OMP_NUM_THREADS were set to n.

Convert Molpro XML output file to plain text. In this mode the input file should refer to a Molpro XML output file.

Don't flush the output, this might increase performance on some systems as the expense of being able to poll the output.

-g $\vert$ --use-logfile
Use a separate logfile for more in-depth output.

All output will be in the regular output file.

-E $\vert$ --exclusive-file-implementation
Specify file implementation. This is mainly for debugging, eg. reproducing non-shared file problems on a system with shared files, normally the default should be used.

Run the initialization job, this is called as part of the build process and should not be used directly.

-k $\vert$ --licence-token
Specify licence token on the command line.

Print Molpro version and exit

For debugging when the getinfo.sh script does not give the correct sysid.

There are a number of other options, specific to parallel execution, which are summarized below and described in detail in the next section. All of the followng options are ignored when using serial MOLPRO.

-n $\vert$ --tasks tasks/tasks_per_node:smp_threads
tasks specifies the number of parallel processes to be set up.
-N $\vert$ --task-specification user1:node1:tasks1,user2:node2:tasks2$\dots$
node1, node2 etc. specify the host names of the nodes on which to run.
-S $\vert$ --shared-file-implementation method
specifies the method by which the shared data are held in parallel.
--multiple-helper-server nprocs_per_server
enables the multiple helper servers.
specifies one helper server on every node.
specifies only one single helper server for all processes.
disables the helper server.
produces an output file for each process when running in parallel.
activates GA debugging statements.
check collective operations when debugging
run conventional parallel (default)
run identical independent tasks parallel (eg. for frequencies).
--gpu $\vert$ --gpus n
number of GPUs
--tuning-mincuda n
minimum dimension for using GPUs (CUDA), currently unused
--nclearsp n
for clearspeed, obsolete
--tuning-mpplat n
mpp latency in microseconds
--tuning-mppspeed n
mpp bandwidth in MB/sec
-G $\vert$ --global-memory n
total amount of GA space initially allocated
-M $\vert$ --ga-stack n
stack option to MA_init() call
--ga-heap n
heap option to MA_init() call

There are a number of other options for tuning and system parameters, but these do not usually concern the general user.

Tuning parameters for blas routines (mxma,, mxmb, mxva, mxvb):

--tuning-flopdgm n
speed of dgemm in MFLOPS
--tuning-flopdgv n
speed of dgemv in MFLOPS
--tuning-flopmxm n
speed of fortran mxma in MFLOPS
--tuning-flopmxv n
speed of fortran mxva in MFLOPS
--tuning-mindgv n
use dgemv from mxva/mxvb if matrix dimensions are ge. mindgv
--tuning-mindgm n
use dgemm from mxma/mxmb if all matrix dimensions are ge. mindgm
--tuning-mindgc n
use dgemm from mxma/mxmb if column dimension is ge. mindgc and other dimensions larger than mindgm2
--tuning-mindgr n
use dgemm from mxma/mxmb if row dimension is ge. mindgr and other dimensions larger than mindgm2
--tuning-mindgl n
use dgemm from mxma/mxmb if link dimension is ge. mindgl and other dimensions larger than mindgm2
--tuning-mindgf n
for old Fujitsu machines, probably obsolete

Tuning parameters for fortran versions of mxma/mxmb:

--tuning-unroll n
level of unrolling in (2,3, or 4)
-b $\vert$ --matrix-block-link $\vert$ --tuning-mxmbln n
block dimension for link dimension
-B $\vert$ --matrix-block $\vert$ --tuning-mxmblk n
block dimension for rows and columns of result matrix
-K $\vert$ --cache $\vert$ --tuning-cache n
cache size in words. If the total size of the 3 matrices is smaller than this, no blocking.

It is not usually necessary to specify any of these options as there are sensible defaults. Sometimes installation dependent options can be found in the system configuration file molpro.rc in the same directory as the MOLPROlibrary files.

molpro@molpro.net 2019-05-25