VASP requires that the BLAS package is installed on the computer. This package can be retrieved from many public domain servers, for instance ftp.netlib.org, but if possible one should buy an optimized BLAS package from the machine supplier (see section. 3.7).
First create a directory where you want to install VAMP/VASP. We recommend to use the directory
~/srcbut any other choice is also possible. Go to this directory.
Get the following files from the server:
vasp3.2: vasp.3.2.tar.Z or vasp.3.2.tar.gz vasp.lib.tar.Z or vasp.lib.tar.gz benchmark.tar.Z bench.Hg.tar.Z vasp4.4: vasp.4.4.tar.Z or vasp.4.4.tar.gz vasp.4.lib.tar.Z or vasp.4.lib.tar.gz benchmark.tar.Z bench.Hg.tar.ZThe server is located at:
machine tph.tuwien.ac.at login vasp password see above directory srcThe *.gz (gzip) files are generally smaller, but gzip is not installed on all machines. At the same location (tph.tuwien.ac.at), pseudopotentials for all s-, p- and d-elements can be found in the files (pot/potcar.date.tar and pot_GGA/potcar.date.tar). Documentation on VAMP/VASP (for instance this file) might be found in the doc directory. It is very desirable to install vasp.4.4 (together with vasp.4.lib). This version requires a fortran90 compiler, and supports dynamic run time allocation, so that no recompilation is required if the system is changed. vasp.4.4 is also the only version will be further developed. On the other hand, vasp.3.2 relies on fortran 77 and can be compiler on almost any machine.
Uncompress the *.Z or *.gz files using uncompress or gunzip. Untar the vasp.*.*.tar file using
tar -xvf vasp.4.4.tar tar -xvf vasp.4.lib.tarTwo directories have been created:
vasp.4.lib/ vasp.4.4/Rename the vasp.4.4 directory to vasp:
mv vasp.4.4 vaspGoto the vasp.lib directory. Copy the appropriated makefile.machine to makefile.
cp makefile.machine makefileYou might choose makefile.machine from the following list:
makefile.cray makefile.dec makefile.fujitsu makefile.rs6000 makefile.rs6000_p1 makefile.sgi(makefile.rs600_p1 is for the Power 1 architecture). Type
makeYou should finish without serious errors (warnings are possible). Goto to the vasp directory. Copy the appropriated makefile.machine to makefile. Type
makeonce again. It should be possible to finish without errors.
Mind: The machine should have installed the package LAPACK. In some cases it might be necessary to add a library search path to the line
LIB = -L../vasp.lib -ldmy -llapack -lesslp2in the makefile. For instance if LAPACK is installed in /usr/local/lib you might add -L/usr/local/lib to this line. If LAPACK is not installed, than compile the LAPACK in the vasp.lib directory, and use this stand alone version (for instance have a look into the makefile for the CRAY).
Next step: Create a work directory, wherever you want. Copy the bench*.tar files to this directory. First untar the benchmark.tar file, then type
touch param.inc getvaspgetvasp is a small shell scripts, which copies the local param.inc file to the directory /src/vasp, performs a make in this directory and copies a working version of vasp to the local directory. It will be necessary to customize getvasp, if you have not installed vasp in /src/vasp/.
Then type
vaspBy than you should get the following results prompted to the screen (the file OSZICAR.ref contains the full reference output, if you use an older version of vasp the OSZICAR file might be similar to OSZICAR.ref_pc; vasp.4.4 gives slightly different results than vasp.3.2 but the difference should be less than 0.001 meV):
reading files
Setup
WARNING: wrap around errors must be expected
prediction of wavefunctions initialized
entering main loop
N E dE d eps ncg rms rms(c)
CG : 1 -.887890024E+04 -.88789E+04 -.155E+04 96 .914E+02
CG : 2 -.901314946E+04 -.13425E+03 -.104E+03 128 .141E+02
CG : 3 -.902887837E+04 -.15729E+02 -.492E+01 128 .305E+01 .669E+00
CG : 4 -.902294679E+04 .59316E+01 -.285E+01 104 .267E+01 .159E+00
CG : 5 -.902282720E+04 .11959E+00 -.747E-01 101 .372E+00 .516E-01
CG : 6 -.902279654E+04 .30665E-01 -.795E-02 99 .118E+00 .214E-01
CG : 7 -.902278656E+04 .99817E-02 -.333E-02 97 .706E-01 .631E-02
CG : 8 -.902278611E+04 .44280E-03 -.139E-03 100 .163E-01 .297E-02
CG : 9 -.902278589E+04 .22693E-03 -.396E-04 62 .788E-02 .998E-03
CG : 10 -.902278586E+04 .27404E-04 -.978E-05 53 .435E-02
1 T= 1819.8 E= -.90209040E+04 F= -.90227859E+04 E0= -.90220339E+04
EK= .18819E+01 SP= .00E+00 SK= .50E-06
N E dE d eps ncg rms rms(c)
CG : 1 -.90226970E+04 -.90227E+04 -.325E+00 96 .935E+00 .174E-01
CG : 2 -.90226994E+04 -.24135E-02 -.301E-02 103 .980E-01 .494E-02
CG : 3 -.90226992E+04 .18339E-03 -.859E-04 92 .144E-01 .207E-02
CG : 4 -.90226992E+04 .56274E-04 -.109E-04 49 .487E-02
2 T= 1736.3 E= -.90209039E+04 F= -.90226992E+04 E0= -.90219456E+04
EK= .17955E+01 SP= -.14E-03 SK= .10E-04
prediction of wavefunctions
.
.
.
Vasp.4.4.3 and newer version will yield the following results (file: OSZICAR.ref_.4.4.3).
vasp.4.4.3 XXXXX
POSCAR found : 1 types and 8 ions
WARNING: mass on POTCAR and INCAR are incompatible
typ 1 Mass 63.5500 63.54600
-------------------------------------------------------------------------
| |
| W W AA RRRRR N N II N N GGGG !!! |
| W W A A R R NN N II NN N G G !!! |
| W W A A R R N N N II N N N G !!! |
| W WW W AAAAAA RRRRR N N N II N N N G GGG ! |
| WW WW A A R R N NN II N NN G G |
| W W A A R R N N II N N GGGG !!! |
| |
| VASP found 21 degrees of freedom |
| the temperature will equal 2*E(kin)/ (degrees of freedom) |
| this differs from previous releases, where T was 2*E(kin)/(3 NIONS). |
| The new definition is more consistent |
| |
-------------------------------------------------------------------------
file io ok, starting setup
WARNING: wrap around errors must be expected
prediction of wavefunctions initialized
entering main loop
N E dE d eps ncg rms rms(c)
CG : 1 -0.88789002E+04 -0.887E+04 -0.155E+04 96 0.914E+02
CG : 2 -0.90131494E+04 -0.134E+03 -0.104E+03 128 0.141E+02
CG : 3 -0.90288783E+04 -0.157E+02 -0.492E+01 128 0.305E+01 0.177E+01
CG : 4 -0.90229467E+04 0.593E+01 -0.285E+01 104 0.267E+01 0.421E+00
CG : 5 -0.90228272E+04 0.119E+00 -0.747E-01 101 0.372E+00 0.137E+00
CG : 6 -0.90227965E+04 0.306E-01 -0.795E-02 99 0.118E+00 0.567E-01
CG : 7 -0.90227865E+04 0.998E-02 -0.333E-02 97 0.706E-01 0.167E-01
CG : 8 -0.90227861E+04 0.442E-03 -0.139E-03 100 0.163E-01 0.788E-02
CG : 9 -0.90227858E+04 0.226E-03 -0.396E-04 62 0.788E-02 0.264E-02
CG : 10 -0.90227858E+04 0.274E-04 -0.978E-05 53 0.435E-02
1 T= 2080. E= -.90209042E+04 F= -.90227859E+04 E0= -.90220339E+04
EK= 0.18817E+01 SP= 0.00E+00 SK= 0.57E-05
bond charge predicted
N E dE d eps ncg rms rms(c)
CG : 1 -0.90226970E+04 -0.902E+04 -0.325E+00 96 0.935E+00 0.461E-01
CG : 2 -0.90226994E+04 -0.241E-02 -0.301E-02 103 0.980E-01 0.131E-01
CG : 3 -0.90226992E+04 0.183E-03 -0.859E-04 92 0.144E-01 0.548E-02
CG : 4 -0.90226992E+04 0.562E-04 -0.109E-04 49 0.487E-02
2 T= 1984. E= -.90209040E+04 F= -.90226992E+04 E0= -.90219456E+04
EK= 0.17948E+01 SP= 0.42E-03 SK= 0.37E-04
...
If the output is correct, you might move to bench.Hg.tar (this is a small
benchmark indicating the performance of the machine).
Untar this file, type touch param.inc and getvasp commands once again
(not required if you use vasp.4.X).
To get the timings you have to change the line
IALGO = 48 ! sum all LOOP values for this benchmarkto
# IALGO = 48 ! sum all LOOP values for this benchmark(i.e. the line must be commented out). Finally type vasp. A performance profile will be prompted to the screen (a few warnings are also printed but they do not cause any problems). Typical profiles for some machines are:
FUJITSU CRAY C 90 FUJITSU FUJITSU
VP 2100 peak 1 Gflop VP 2400 VPP 500
CPU /VPU CPU/VPU CPU/VPU
STUFAK : 1.35 /1.36 0.82 0.39/0.39 0.47/0.48
CHSP : 2.24/ 2.29 1.13 0.61/0.62 0.76/0.78
DEPLE : 0.33/ 0.50 0.41 0.16/0.28 0.18/0.31
RSPHER: 0.12/ 0.20 0.22 0.09/0.14 0.12/0.19
RACC: 5.80/ 6.02 2.93 2.31/2.34 2.67/2.72
RPRO : 4.75/ 5.10 2.41 1.56/1.65 1.60/1.70
FFTWAV: 2.01/ 2.11 1.03 0.56/0.58 0.70/0.73
FFTEXT: 2.06/ 2.11 1.01 0.56/0.56 0.70/0.73
ECCP : 2.87/ 3.05 1.71 0.98/1.02 1.25/1.34
POTLOK : 0.23/ 0.24 0.46 0.09/0.20 0.12/0.20
SETDIJ : 0.30/ 0.50 0.38 0.16/0.31 0.18/0.34
ORTHCH: 14.37/14.85 5.46 3.81/3.81 7.06/7.58
LINCOM: 6.44/ 6.48 4.26 2.05/2.05 4.36/4.36
ORTHO :** 38.69/49.53 9.98 11.56/11.74 14.76/15.04
IBM 3CT 590 595 397
RS 6000 2 4 memory boards
STUFAK : 0.60 0.60 0.18 0.25
CHSP : 6.70 5.19 4.57 2.71
DEPLE : .74 .70 .43 .28
RSPHER: .20 .20 .12 .09
RACC: 11.14 9.18 10.81 4.82
RPRO : 10.63 8.68 10.81 4.48
FFTWAV: 6.01 4.91 3.93 2.46
FFTEXT: 6.15 4.93 3.96 2.48
ECCP : 7.19 5.98 4.70 2.92
POTLOK : 0.73 0.73 0.42 0.29
SETDIJ : 0.59 0.53 .40 0.25
ORTHCH: 19.99 18.21 11.39 8.39
LINCOM: 15.72 14.87 8.78 6.64
ORTHO :** 61.62 46.89 52.11 24.55
SGI PowerChal. SGI Origin DEC HP PII-400
Mips 10000 ev5 500 C 180 pgf90
LX
STUFAK : 1.16 0.14 0.18 0.41 0.60
CHSP : 5.98 3.84 3.57 3.29 7.10
DEPLE : 0.75 0.27 0.34 .37 0.91
RSPHER: 0.24 0.10 0.10 .17 0.16
RACC: 19.05 7.21 7.33 12.65 14.77
RPRO : 15.10 6.54 6.66 10.80 12.93
FFTWAV: 5.61 3.64 3.00 2.72 6.44
FFTEXT: 5.59 3.66 3.00 2.85 6.48
ECCP : 6.91 4.06 3.76 4.22 8.00
POTLOK : 0.94 0.25 0.30 .48 0.54
SETDIJ : 0.61 0.24 0.30 .31 0.78
ORTHCH: 19.60 12.00 9.59 14.65 19.16
LINCOM: 13.84 9.00 7.29 8.00 16.00
ORTHO :** 140.91 114.27 106.39
Mind: The code might change, therefore changes of these numbers are possible.
The benchmark requires 50 MBytes, and takes between 2-10 minutes. It is best if the machine is idle, but generally results are also useful if this is not the case. Mind that the last two timings reflect the performance of vector matrix-commands and are not of importance for the high performance algorithm implemented in VASP (IALGO=48). But they do effect the performance of the standard algorithm IALGO=8.
Finally you might run the benchmark with the line IALGO=48. Typical values for LOOP+ (as written to the OUTCAR file, simply search for the line LOOP+) are shown in Section 3.9. The output produced by this run can be found in the OSZICAR.ref file (version vasp.4.4.3) in the tar file.