|
xc
|
A LoadBalancer is an object used to balance a PartitionedDomain. More...
#include <LoadBalancer.h>


Public Member Functions | |
| LoadBalancer (void) | |
| Default constructor. | |
| LoadBalancer (double factGreater, int releases, bool disallowDisconnected=true) | |
| Constructor. More... | |
| virtual void | setLinks (DomainPartitioner &thePartitioner) |
Sets the pointer to the DomainPartitioner object associated with the LoadBalancer to point to thePartitioner. More... | |
| virtual int | balance (Graph &theWeightedGraph)=0 |
| Each subclass must provide an implementation of this method. More... | |
Public Member Functions inherited from CommandEntity | |
| CommandEntity (CommandEntity *owr=nullptr) | |
| Default constructor. | |
| CommandEntity * | Owner (void) |
| Return a pointer to the object owner. | |
| const CommandEntity * | Owner (void) const |
| Return un puntero al objeto propietario de ESTE. | |
| const StandardOutputWrapper & | getStandardOutputWrapper (void) const |
| Return the regular output stream wrapper. | |
| StandardOutputWrapper & | getStandardOutputWrapper (void) |
| Return the regular output stream wrapper. | |
| const std::string & | getLogFileName (void) const |
| Returns log file name. | |
| void | setLogFileName (const std::string &) |
| Sets log file name. | |
| const std::string & | getErrFileName (void) const |
| Returns err file name. | |
| void | setErrFileName (const std::string &) |
| Sets error file name. | |
| const std::string & | getOutputFileName (void) const |
| Returns regular output file name. | |
| void | setOutputFileName (const std::string &) |
| Sets regular output file name. | |
| boost::python::object | evalPy (boost::python::object dict, const std::string &) |
| Return the Python object that results from evaluating the argument. | |
| boost::python::object | execPy (boost::python::object dict, const std::string &) |
| Return the Python objects that results from executing the code in the string argument. | |
| boost::python::object | execFilePy (boost::python::object dict, const std::string &) |
| Return the Python object that results from executing the code in the file. | |
Public Member Functions inherited from EntityWithProperties | |
| EntityWithProperties (EntityWithProperties *owr=nullptr) | |
| Default constructor. | |
| void | clearPyProps (void) |
| Clear python properties map. | |
| bool | hasPyProp (const std::string &) |
| Returns true if property exists. | |
| boost::python::object | getPyProp (const std::string &str) |
| Return the Python object with the name being passed as parameter. | |
| void | setPyProp (std::string str, boost::python::object val) |
| Sets/appends a value tho the Python object's dictionary. | |
| void | copyPropsFrom (const EntityWithProperties &) |
| Copy the properties from the argument. | |
| boost::python::list | getPropNames (void) const |
| Return the names of the object properties weightings. | |
| const PythonDict & | getPropertiesDict (void) const |
| Return a std::map container with the properties of the object. | |
| boost::python::dict | getPyDict (void) const |
| Return a Python dictionary containing the object members values. | |
| void | setPyDict (const boost::python::dict &) |
| Set the values of the object members from a Python dictionary. | |
Public Member Functions inherited from EntityWithOwner | |
| EntityWithOwner (EntityWithOwner *owr=nullptr) | |
| Default constructor. | |
| EntityWithOwner (const EntityWithOwner &) | |
| Copy constructor. | |
| EntityWithOwner & | operator= (const EntityWithOwner &) |
| Assignment operator. | |
| virtual bool | operator== (const EntityWithOwner &) const |
| Comparison operator. | |
| virtual | ~EntityWithOwner (void) |
| Virtual destructor. | |
| virtual std::string | getClassName (void) const |
| Returns demangled class name. | |
| void | set_owner (EntityWithOwner *owr) |
| Assigns the owner of the object. | |
| EntityWithOwner * | Owner (void) |
| const EntityWithOwner * | Owner (void) const |
Protected Member Functions | |
| DomainPartitioner * | getDomainPartitioner (void) |
| Returns a pointer to the DomainPartitioner. More... | |
Protected Member Functions inherited from CommandEntity | |
| template<class T > | |
| void | string_to (T &, const std::string &) const |
Protected Member Functions inherited from EntityWithProperties | |
| bool | isEqual (const EntityWithProperties &) const |
| Return true if both objects are equal. | |
Protected Member Functions inherited from EntityWithOwner | |
| virtual bool | isEqual (const EntityWithOwner &) const |
| Return true if both objects are equal. | |
Protected Attributes | |
| int | numReleases |
| double | factorGreater |
| number of releases. | |
| bool | disallowDisconnectedGraphs |
Additional Inherited Members | |
Public Types inherited from EntityWithProperties | |
| typedef std::map< std::string, boost::python::object > | PythonDict |
Static Public Member Functions inherited from CommandEntity | |
| static void | resetStandardOutput (void) |
| Reset the standard output streams to its defaults buffers. | |
Static Public Member Functions inherited from EntityWithOwner | |
| static int | getVerbosityLevel (void) |
| Get the value of the verbosity level. | |
| static void | setVerbosityLevel (const int &) |
| Set the value of the verbosity level. | |
Static Protected Member Functions inherited from CommandEntity | |
| static CommandEntity * | entcmd_cast (boost::any &data) |
Static Protected Attributes inherited from EntityWithOwner | |
| static int | verbosity = 1 |
| Object that owns THIS ONE. More... | |
A LoadBalancer is an object used to balance a PartitionedDomain.
The LoadBalancer does this by invoking methods in the DomainPartitioner object with which it is associated.
| XC::LoadBalancer::LoadBalancer | ( | double | factGreater, |
| int | releases, | ||
| bool | disallowDisconnected = true |
||
| ) |
Constructor.
Sets the parameters used in the balance() method.
| factGreater | factor greater. |
| releases | number of releases. |
|
pure virtual |
Each subclass must provide an implementation of this method.
This method is invoked to balance the PartitionedDomain. The Graph {theWeightedGraph} is a weighted graph in which the vertices represent the Subdomains, the edges Subdomains sharing common boundary nodes and the weight the cost of the previous Subdomain calculations (determined by invoking getCost() on the Subdomains).
Implemented in XC::SwapHeavierToLighterNeighbours, XC::ReleaseHeavierToLighterNeighbours, and XC::ShedHeaviest.
|
protected |
Returns a pointer to the DomainPartitioner.
If no DomainPartitioner has been set, a warning message is printed and \(0\) returned.
|
virtual |
Sets the pointer to the DomainPartitioner object associated with the LoadBalancer to point to thePartitioner.
1.8.13