![]() |
Dakota
Version 6.22
Explore and Predict with Confidence
|
Container class for a set of ParallelLevel list iterators that collectively identify a particular multilevel parallel configuration. More...
Public Member Functions | |
| ParallelConfiguration () | |
| default constructor | |
| ParallelConfiguration (const ParallelConfiguration &pl) | |
| copy constructor | |
| ~ParallelConfiguration () | |
| destructor | |
| ParallelConfiguration & | operator= (const ParallelConfiguration &pl) |
| assignment operator | |
| const ParallelLevel & | w_parallel_level () const |
| return the ParallelLevel corresponding to miPLIters.front() | |
| const ParallelLevel & | mi_parallel_level (size_t index=_NPOS) const |
| return the ParallelLevel corresponding to miPLIters[index] More... | |
| const ParallelLevel & | ie_parallel_level () const |
| return the ParallelLevel corresponding to iePLIter | |
| const ParallelLevel & | ea_parallel_level () const |
| return the ParallelLevel corresponding to eaPLIter | |
| bool | w_parallel_level_defined () const |
| test for definition of world parallel level | |
| bool | mi_parallel_level_defined (size_t index=_NPOS) const |
| test for definition of meta-iterator-iterator parallel level | |
| bool | ie_parallel_level_defined () const |
| test for definition of iterator-evaluation parallel level | |
| bool | ea_parallel_level_defined () const |
| test for definition of evaluation-analysis parallel level | |
| ParLevLIter | w_parallel_level_iterator () const |
| return miPLIters.front() | |
| ParLevLIter | mi_parallel_level_iterator (size_t index=_NPOS) const |
| return miPLIters[index] More... | |
| ParLevLIter | ie_parallel_level_iterator () const |
| return iePLIter | |
| ParLevLIter | ea_parallel_level_iterator () const |
| return eaPLIter | |
| size_t | mi_parallel_level_index (ParLevLIter pl_iter) const |
| return the index within miPLIters corresponding to pl_iter | |
| size_t | mi_parallel_level_last_index () const |
| return the index of the last entry in miPLIters | |
Private Member Functions | |
| void | assign (const ParallelConfiguration &pl) |
| assign the attributes of the incoming pl to this object | |
Private Attributes | |
| short | numParallelLevels |
| number of parallel levels | |
| std::vector< ParLevLIter > | miPLIters |
| list iterator for world level followed by any concurrent iterator partitions (there may be multiple per parallel configuration instance) | |
| ParLevLIter | iePLIter |
| list iterator identifying the iterator-evaluation parallelLevel (there can only be one) | |
| ParLevLIter | eaPLIter |
| list iterator identifying the evaluation-analysis parallelLevel (there can only be one) | |
| ParLevLIter | endPLIter |
| snapshot of the end of ParallelLibrary::parallelLevels; used for detecting when a component of the parallel configuration has been initialized | |
Friends | |
| class | ParallelLibrary |
| the ParallelLibrary class has special access priveleges in order to streamline implementation | |
Container class for a set of ParallelLevel list iterators that collectively identify a particular multilevel parallel configuration.
Rather than containing the multilevel parallel configuration directly, ParallelConfiguration instead provides a set of list iterators which point into a combined list of ParallelLevels. This approach allows different configurations to reuse ParallelLevels without copying them. A list of ParallelConfigurations is contained in ParallelLibrary (ParallelLibrary::parallelConfigurations).
|
inline |
return the ParallelLevel corresponding to miPLIters[index]
If a meaningful index is not provided, return the last mi parallel level. This is useful within the Model context, for which we need the lowest level partition after any meta-iterator recursions.
References ParallelConfiguration::miPLIters.
Referenced by ApplicationInterface::set_evaluation_communicators().
|
inline |
return miPLIters[index]
If a meaningful index is not provided, return the last mi parallel level. This is useful within the Model context, for which we need the lowest level partition after any meta-iterator recursions.
References ParallelConfiguration::miPLIters.