next up previous contents
Next: 2.7 Installation tricks and Up: 2 Installation Previous: 2.5 Compilation   Contents


2.6 Running tests and examples

As a final check that compilation was successful, you may want to run some or all of the examples. There are two different types of examples:

Instructions for the impatient:
   cd PW/tests/
   ./check_pw.x.j
for PWscf; PW/tests/README contains a list of what is tested. For CP:
   cd CPV/tests/
   ./check_cp.x.j
Instructions for all others: edit file environment_variables, setting the following variables as needed.
BIN_DIR: directory where executables reside
PSEUDO_DIR: directory where pseudopotential files reside
TMP_DIR: directory to be used as temporary storage area
The default values of BIN_DIR and PSEUDO_DIR should be fine, unless you have installed things in nonstandard places. TMP_DIR must be a directory where you have read and write access to, with enough available space to host the temporary files produced by the example runs, and possibly offering high I/O performance (i.e., don't use an NFS-mounted directory). NOTA BENE: do not use a directory containing other data: the examples will clean it!

If you have compiled the parallel version of QUANTUM ESPRESSO (this is the default if parallel libraries are detected), you will usually have to specify a launcher program (such as mpirun or mpiexec) and the number of processors: see Sec.3 for details. In order to do that, edit again the environment_variables file and set the PARA_PREFIX and PARA_POSTFIX variables as needed. Parallel executables will be run by a command like this:

      $PARA_PREFIX pw.x $PARA_POSTFIX -i file.in > file.out
For example, if the command line is like this (as for an IBM SP):
      poe pw.x -procs 4 -i file.in > file.out
you should set PARA_PREFIX="poe", PARA_POSTFIX="-procs 4". Furthermore, if your machine does not support interactive use, you must run the commands specified above through the batch queuing system installed on that machine. Ask your system administrator for instructions. For execution using OpenMP on N threads, you should set PARA_PREFIX to "env OMP_NUM_THREADS=N ... ".

Notice that most tests and examples are devised to be run serially or on a small number of processors; do not use tests and examples to benchmark parallelism, do not try to run on too many processors.

To run an example, go to the corresponding directory (e.g. PW/examples/example01) and execute:

      ./run_example
This will create a subdirectory results/, containing the input and output files generated by the calculation. Some examples take only a few seconds to run, while others may require several minutes depending on your system.

In each example's directory, the reference/ subdirectory contains verified output files, that you can check your results against. They were generated on a Linux PC using the Intel compiler. On different architectures the precise numbers could be slightly different, in particular if different FFT dimensions are automatically selected. For this reason, a plain diff of your results against the reference data doesn't work, or at least, it requires human inspection of the results.

The example scripts stop if an error is detected. You should look inside the last written output file to understand why.


next up previous contents
Next: 2.7 Installation tricks and Up: 2 Installation Previous: 2.5 Compilation   Contents
2017-03-03