next up previous contents index
Next: Automatic running test with Up: User's manual of OpenMX Previous: Test calculation   Contents   Index

Automatic running test

In addition to a running test of the Section 'Test calculation', if you want to check whether most functionalities of OpenMX have been successfully installed on your computer or not, we recommend for you to perform an automatic running test. To do this, you can run OpenMX as follows:

For the serial running

     % ./openmx -runtest
  
For the MPI parallel running
     % mpirun -np 4 openmx -runtest
  
For the OpenMP/MPI parallel running
     % mpirun -np 4 openmx -runtest -nt 1
  

In this parallel running, you can specify other options for mpirun. Then, OpenMX will run with 14 test files, and compare calculated results with the reference results which are stored in 'work/input_example'. The comparison (absolute difference in the total energy and force) is stored in a file 'runtest.result' in the directory 'work'. The reference results were calculated using a single processor of a 3.0 GHz Xeon machine. If the difference is within last seven digits, we may consider that the installation is successful. As an example, 'runtest.result' generated by the automatic running test is shown below:

1 input_example/Benzene.dat Elapsed time(s)= 16.05 diff Utot= 0.000000000000 diff Force= 0.000000000000
2 input_example/C60.dat Elapsed time(s)= 127.43 diff Utot= 0.000000000006 diff Force= 0.000000000000
3 input_example/CO.dat Elapsed time(s)= 38.82 diff Utot= 0.000000000000 diff Force= 0.000000000000
4 input_example/Cr2.dat Elapsed time(s)= 32.14 diff Utot= 0.000000000000 diff Force= 0.000000000000
5 input_example/Crys-MnO.dat Elapsed time(s)= 93.71 diff Utot= 0.000000000032 diff Force= 0.000000000001
6 input_example/GaAs.dat Elapsed time(s)= 152.97 diff Utot= 0.000000000001 diff Force= 0.000000000000
7 input_example/Glycine.dat Elapsed time(s)= 27.44 diff Utot= 0.000000000000 diff Force= 0.000000000000
8 input_example/Graphite4.dat Elapsed time(s)= 14.52 diff Utot= 0.000000000089 diff Force= 0.000000000000
9 input_example/H2O-EF.dat Elapsed time(s)= 17.69 diff Utot= 0.000000000000 diff Force= 0.000000000001
10 input_example/H2O.dat Elapsed time(s)= 12.05 diff Utot= 0.000000000000 diff Force= 0.000000001907
11 input_example/HMn.dat Elapsed time(s)= 105.46 diff Utot= 0.000000000000 diff Force= 0.000000000000
12 input_example/Methane.dat Elapsed time(s)= 9.66 diff Utot= 0.000000000209 diff Force= 0.000000001263
13 input_example/Mol_MnO.dat Elapsed time(s)= 46.69 diff Utot= 0.000000000000 diff Force= 0.000000000000
14 input_example/Ndia2.dat Elapsed time(s)= 13.24 diff Utot= 0.000000000001 diff Force= 0.000000000000
Total elapsed time (s) 707.87


The comparison was made using three processes by MPI with two treads by OpenMP on the same machine. As you may know, the floating point operation depends on not only computational environment, but also the number of processors used in parallel execution. So we see in the above example that there is a small difference even using the same machine. In addition, since two work arrays in OpenMX are allocated as single-precision floating point numbers for saving the size of working memory, the difference between 32 bits and 64 bits machines can be large in this 'runtest'. The elapsed time of each job is also output, so it is helpful for comparison of the computational speed depending on computational environment. In the directory 'work/input_example' you can find 'runtest.result' files generated on several platforms.

If you want to make reference files by yourself, please execute OpenMX as follows:

     % ./openmx -maketest
  

Then, for *.dat files in 'work/input_example', OpenMX will generate *.out files in 'work/input_example'. So, you can add a new dat file which is used in the next running test. But, please make sure that the previous out files in 'work/input_example' will be overwritten by this procedure. For advanced testers for checking the reliability of code, see also the Sections 'Automatic force tester' and 'Automatic memory leak tester'.


next up previous contents index
Next: Automatic running test with Up: User's manual of OpenMX Previous: Test calculation   Contents   Index
2011-11-10