NAME
sc::DistShellPair -
Distributes shell pairs either statically or dynamically.
SYNOPSIS
#include <distshpair.h>
Classes
class SharedData
This is used to store data that must be shared between all
cooperating shell pairs.
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.
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.