sc::DistShellPair(3)

NAME
sc::DistShellPair - Distributes shell pairs either statically or dynamically.

SYNOPSIS

#include <distshpair.h>

  Public Member Functions
DistShellPair (const Ref< MessageGrp > &, int nthread, int mythread, const Ref< ThreadLock > &lock, const Ref< GaussianBasisSet > &bs1, const Ref< GaussianBasisSet > &bs2, bool dynamic, SharedData *shared=0)
The DistShellPair class is used to distribute shell pair indices among tasks.
void init ()
Resets to the first shell pair.
void set_debug (int d)
How much stuff to print out.
void set_print_percent (double p)
How often to print status from node 0.
int get_task (int &P, int &Q)
Puts the current PQ shell pair into P and Q and returns 1.

  Classes
class SharedData
This is used to store data that must be shared between all cooperating shell pairs.

Detailed Description

Distributes shell pairs either statically or dynamically.

Constructor & Destructor Documentation

  sc::DistShellPair::DistShellPair (const Ref< MessageGrp > &, int nthread, int mythread, const Ref< ThreadLock > & lock, const Ref< GaussianBasisSet > & bs1, const Ref< GaussianBasisSet > & bs2, bool dynamic, SharedData * shared = 0)

The DistShellPair class is used to distribute shell pair indices among tasks.

Both static (round-robin) and dynamic methods are supported.

Member Function Documentation

  int sc::DistShellPair::get_task (int & P, int & Q)

Puts the current PQ shell pair into P and Q and returns 1.

When there are no more shell pairs to be processed by this processor, 0 is returned. Once we start doing get_tasks, we have to go to the end if dynamic load balancing is used.

P belongs to bs1, and Q belongs to bs2. If (bs1 == bs2) then P is greater or equal to Q.

Author

Generated automatically by Doxygen for MPQC from the source code.