forked from elinscott/toscam
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathINSTALL
59 lines (47 loc) · 2.18 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Instructions for installing TOSCAM
You will need to supply:
- BLAS and LAPACK libraries
- a fortran compiler (set up for MPI if compiling a parallel version)
- C and C++ compilers
You will need to decide if you would like to use the hybrid OpenMP/MPI
parallelism, in which case OpenMP will need to be enabled for your compiler
1) If there is a configuration file already present in the config folder which
is set up for your HPC system, then you will want to use it, otherwise you
may want to create one by making a copy of an existing one for a system
which is similar.
The build system will by default use the flags defined in
config/conf.default. However you may use any file by defining the variable
$(ARCH) on the make command line: make onetep ARCH=xxx
2) The build system is designed to work with GNU make and may not work with
other versions. Compiled objects are stored in obj directories and the
final binaries in bin.
3) Edit (or create) the relevant file in the config directory. This might look
something like:
# TOSCAM configuration file
F90 = mpifort
FFLAGS = -O1 -qopenmp
MKL = -mkl
CCOMPL = mpicc
CFLAGS = -O1
C++ = mpicpc
CXXFLAGS = -O1
RANLIB = ranlib
a) F90 is simply the Fortran compiler to be used.
b) FFLAGS are the default compiler flags, including preprocessor directives.
To enable OpenMP, you will need the appropriate directive for your
compiler, eg:
-qopenmp for ifort
-fopenmp for gfortran
-openmp for nagfor
c) MKL must point to the BLAS and LAPACK libraries
d) CCOMPL is the C compiler to use
e) CFLAGS are the C flags to use
f) C++ is the C++ compiler to use
g) CXXFLAGS are the C++ flags to use
h) RANLIB is the local installation of ranlib
4) Running make with no target in the base directory lists the available
options. The normal target is 'toscam' but there are also options for
step-by-step compilation of the libraries and solver.
5) Finally, add /path/to/toscam/bin and /path/to/toscam/utils to your $PATH, and set $ONETEP to be your ONETEP binary.
TOSCAM Developers
Last updated: 10 April 2019