Next: Coupled Cluster Methods
Up: Second-order Møller-Plesset Theory: MP2
Previous: Using the MP2-R12 method
Contents
Here are a few recommendations for carrying out extended integral-direct MP2 and
MP2-R12 calculations with PSI3:
- While the integral-direct MP2 algorithm doesn't need any
significant disk storage,
the integral-direct algorithm for the MP2-R12 energy
stores the transformed integrals to disk, hence very large
computations will require a lot of disk space. In general
the storage requirement is
bytes, where
is the number of occupied orbitals, and
is the size of the basis.
- If there is not enough memory to perform the computation in one pass,
the program will do multiple passes through the entire set of integrals,
hence your computation will run that many times longer.
In such case, find the machine with the most memory and processors available.
- On SMP machines, set the NUM_THREADS to the number of
processors available for the job, or, if all processors are allocated for
your job, set NUM_THREADS to twice the number of processors
you have. Modern operating systems schedulers are usually very efficient
at handling multithreaded programs, so the overhead of thread context
switching is not significant, but using more threads may lead to better
load balancing, and lower execution times. For example, on a 32-processor
IBM eServer p690 we found that the optimal number of threads was 128.
For the optimal performance, do a few runs with different number of threads
and see which number works best.
Avoid excessively large
number of threads, as this descreases the net amount of memory available to
the computation and thus may increase the number of passes.
- Set the MEMORY keyword to the 90% of the available physical
memory, at most. There is a small amount of overhead associated with the
integral-direct algorithms that is not accounted for by the internal memory
handling routines.
- The implementation of the integral-direct MP2-R12 (and MP2) method
in PSI3 can run efficiently on SMP, or shared-memory, machines,
by utilizing multiple processors via multithreaded approach.
However, it cannot utilize distributed memory machines,
such as commodity (PC) clusters and massively parallel machines,
to their full potential, since one computation can only take advantage
of one node of such machine at a time.
In such environments, the aformentioned MPQC implementation of
the MP2-R12 method should be preferred
(see http://aros.ca.sandia.gov/~cljanss/mpqc/).
Next: Coupled Cluster Methods
Up: Second-order Møller-Plesset Theory: MP2
Previous: Using the MP2-R12 method
Contents
T. Daniel Crawford
2009-02-16