mirror of https://github.com/QMCPACK/qmcpack.git
Spelling fixes in WalkerControlMPI.cpp
Minor spelling and language fixes in the comments.
This commit is contained in:
parent
46b7989443
commit
4544d8e311
|
@ -65,18 +65,18 @@ WalkerControlMPI::WalkerControlMPI(Communicate* c): WalkerControlBase(c)
|
|||
setup_timers(myTimers, DMCMPITimerNames, timer_level_medium);
|
||||
}
|
||||
|
||||
/** perform branch and swap walkers as required
|
||||
/** Perform branch and swap walkers as required
|
||||
*
|
||||
* it takes 4 steps:
|
||||
* 1. shortWalkers marks good and bad walkers.
|
||||
* It takes 4 steps:
|
||||
* 1. sortWalkers marks good and bad walkers.
|
||||
* 2. allreduce and make the decision of load balancing.
|
||||
* 3. send/recv walkers. Receiving side recycle bad walkers' memory first.
|
||||
* 4. copyWalkers generate walker copies of good walkers.
|
||||
* 3. send/recv walkers. Receiving side recycles bad walkers' memory first.
|
||||
* 4. copyWalkers generates copies of good walkers.
|
||||
* In order to minimize the memory footprint fluctuation
|
||||
* the walker copying is placed as the last step.
|
||||
* In order to reduce the time for allocating walker memory,
|
||||
* this algorithm does not destroy the bad walkers in step 1.
|
||||
* All the bad walkers are recyled as much as possible in step 3/4.
|
||||
* All the bad walkers are recycled as much as possible in step 3/4.
|
||||
*/
|
||||
int WalkerControlMPI::branch(int iter, MCWalkerConfiguration& W, RealType trigger)
|
||||
{
|
||||
|
@ -156,12 +156,12 @@ void determineNewWalkerPopulation(int Cur_pop, int NumContexts, int MyContext, c
|
|||
/** swap Walkers with Recv/Send or Irecv/Isend
|
||||
*
|
||||
* The algorithm ensures that the load per node can differ only by one walker.
|
||||
* Each MPI rank can only be sending or receiving or silient.
|
||||
* Each MPI rank can only send or receive or be silent.
|
||||
* The communication is one-dimensional and very local.
|
||||
* If mutiple copies of a walker need to be sent to the target rank,
|
||||
* If multiple copies of a walker need to be sent to the target rank,
|
||||
* only one walker is sent and the number of copies is encoded in the message.
|
||||
* The blocking send/recv may become serialized and worsen load imbalance.
|
||||
* Non blocking send/recv algorithm avoids completely serialziation.
|
||||
* Non blocking send/recv algorithm avoids serialization completely.
|
||||
*/
|
||||
void WalkerControlMPI::swapWalkersSimple(MCWalkerConfiguration& W)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue