Next: A..3.4 Compilation and linking Up: A..3 Installation from source Previous: A..3.2 Prerequisites


A..3.3 Configuration

Once the distribution has been unpacked, identify the root directory that was created (normally molpro2008.1). In the following description, all directories are given relative to this root. Having changed to the root directory, you should check that the directory containing the Fortran compiler you want to use is in your PATH. Then run the command

./configure -batch

which creates the file CONFIG. This file contains machine-dependent parameters, such as compiler options. Normally CONFIG will not need changing, but you should at the least examine it, and change any configuration parameters which you deem necessary. Any changes made to CONFIG will be lost next time ./configure is invoked, so it is best to supply as many of these as possible via the command line.

The configure procedure may be given command line options, and, if run without -batch , additionally prompts for a number of parameters:

  1. On certain machines it is possible to compile the program to use either 32 or 64 bit integers, and in this case configure may be given a command-line option -i4 or -i8 respectively to override the default behaviour. Generally, the 64-bit choice allows larger calculations (files larger than 2Gb, more than 16 active orbitals), but can be slower if the underlying hardware does not support 64-bit integers. Note that if -i4 is used then large files (greater than 2Gb) are supported on most systems, but even then the sizes of MOLPRO records are restricted to 16 Gb since the internal addressing in MOLPRO uses 32-bit integers. If -i8 is used, the record and file sizes are effectively unlimited. Normally we recommend using the default determined by configure.

  2. In the case of building for parallel execution, the option -mpp or -mppx must be given on the command line. For the distinction between these two parallelism modes, please refer to the user manual, section 2. The option -mppbase must also be given followed by the location of the Global Arrays base directory, e.g.

    ./configure -mpp -mppbase /usr/local/ga-4-0-8
    

    which should contain directories include and lib/TARGET where for example on Linux/x86_64 TARGET=LINUX64.

    Queries regarding Global Arrays installations should be sent directly to the Global Arrays team, any Molpro related queries will assume a fully functional Global Arrays suite with all internal tests run successfully.

  3. If any system libraries are in unusual places, it may be necessary to specify them explicitly as the arguments to a -L command-line option.

  4. configure asks whether you wish to use system BLAS subroutine libraries. MOLPRO has its own optimised Fortran version of these libraries, and this can safely be used. On most machines, however, it will be advantageous to use a system-tuned version instead. On the command line one can specify the level of BLAS to be used from the system, e.g. -blas2. For example if you specify 2, the system libraries will be used for level 2 and level 1 BLAS, but MOLPRO's internal routines will be used for level 3 (i.e., matrix-matrix multiplication). Normally, however, one would choose either 0 or 3, which are the defaults depending upon whether a BLAS library is found.

    A special situation arises if 64-bit integers are in use (-i8), since on many platforms the system BLAS libraries only supports 32-bit integer arguments. In such cases (e.g., IBM, SGI, SUN) either 0 or 4 can be given for the BLAS level. BLAS=0 should always work and means that the MOLPRO Fortran BLAS routines are used. On some platforms (IBM, SGI, SUN) BLAS=4 will give better performance; in this case some 32-bit BLAS routines are used from the system library (these are then called from wrapper routines, which convert 64 to 32-bit integer arguments. Note that this might cause problems if more than 2 GB of memory is used).

    For good performance it is important to use appropriate BLAS libraries; in particular, a fast implementation of the matrix multiplication dgemm is very important for MOLPRO. Therefore you should use a system tuned BLAS library whenever available.

    MOLPRO will automatically detect the most appropriate BLAS library in many cases. In certain cases, in particular when the BLAS library is installed in a non-default location, configure should be directed to the appropriate directory with:

    ./configure -blaspath /path/to/lib/dir
    

    Specification of BLAS libraries can be simplified by placing any relevant downloaded libraries in the directory blaslibs; configure searches this directory (and then, with lower priority, some potential system directories) for libraries relevant to the hardware.

    For Intel and AMD Linux systems we recommend the following BLAS libraries:

    MKL
    The Intel Math Kernel Library (MKL)
    ATLAS
    The Automatically Tuned Linear Algebra Software (ATLAS) library. You must use the atlas library specific to your processor:
    Pentium III
    Linux_PIIISSE1
    Pentium 4,Xeon
    Linux_P4SSE2
    AMD Athlon
    Linux_ATHLON
    AMD Opteron
    Linux_HAMMER64SSE2_2 (64 bit)
    When using atlas MOLPRO will automatically compile in the extra lapack subroutines which do not come by default with the package and so the liblapack.a which comes with Atlas is sufficient.
    ACML
    For Opteron systems then AMD Core Math Library (ACML) is the preferred blas library.
    SGI Altix can use the scsl library is preferred. HP platforms can use the mlib math library. IBM Power platforms can use the essl package.

  5. configure prompts for the destination directory (INSTBIN) for final installation of the MOLPRO executable. This directory should be one normally in the PATH of all users who will access MOLPRO, and its specification will depend on whether the installation is private or public.

  6. configure prompts for the destination directory (INSTLIB) for installation of ancillary files which are required for program execution.

  7. configure prompts for the destination directory for documentation. This should normally be a directory that is mounted on a worldwide web server. This is only relevant if the documentation is also going to be installed from this directory (see below).

The full list of command-line options recognized by configure are:

-af90
use Absoft Pro Fortran compiler
-batch
run script non-interactively
-blas0
Don't use optimised blas library
-blas1
use blas level 1
-blas2
use blas level 2
-blas3
use blas level 3
-blas4
use blas level 4
-blaspath
specify blas library path
-cc
use C compiler named cc
-clearspeed
compile clearspeed code
-clearspeedbase
specify clearspeed base path for includes and libraries
-f
specify Molpro fortran pre-processor flags
-f90
use f90 Fortran compiler
-fcc
use Fujitsu C compiler
-force-link
Force linking of main executable
-fort
use fort Fortran compiler
-frt
use frt Fortran compiler
-g95
use G95 Fortran compiler
-gabase
use mppbase, provided only for backward compatibility
-gcc
use GNU Compiler Collection C compiler
-gforker
Use settings for mpich compiled with gforker option
-gfortran
use gfortran Fortran compiler
-hdf5
specify HDF5 base directory
-i386
use settings for i386 machine
-i4
Makes default integer variables 4 bytes long
-i686
use settings for i686 machine
-i8
Makes default integer variables 8 bytes long
-icc
use Intel C compiler
-ifort
use Intel Fortran compiler
-instroot
installation base directory
-lapack
use LAPACK
-lapackpath
specify LAPACK library path
-letter
specify letter latex paper size
-Linux
use settings for Linux kernel
-mpp
produce parallel Molpro
-mppbase
specify mpp base path for includes and libraries
-mppx
produce trivial parallel Molpro
-natom
max number of atoms
-nbasis
max number of basis functions
-noclearspeed
do not compile clearspeed code
-nolapack
don't use LAPACK
-nolargefiles
Do not use largefiles
-noslater
do not compile slater code
-nprim
max number of primitives
-nrec
max number of records
-nstate
max number of states per symmetry
-nsymm
max number of state symmetries
-nvalence
max number of valence orbitals
-pathcc
use Pathscale C compiler
-pathf90
use Pathscale Fortran compiler
-pgf90
use Portland Fortran compiler
-rpm
Build with RPM settings
-slater
compile slater code
-trial
use trial parse object
-Windows
use settings for Windows kernel
-x86-32
use settings for x86-32 machine
-x86-64
use settings for x86-64 machine
-x86_64
use settings for x86_64 machine
-xlf
use IBM Fortran compiler



Next: A..3.4 Compilation and linking Up: A..3 Installation from source Previous: A..3.2 Prerequisites

molpro@molpro.net
Sep 24, 2008