Definition at line 25 of file YadaMachine.tcl.
Public Member Functions | |
displayTitle () | |
fromDOM (domNode rootNode) | |
getLoad () | |
getPersistanceFileName () | |
getTimePerJob () | |
hasSavedState () | |
isModified () | |
load () | |
queueJob (YadaJob job) | |
resetModified () | |
save () | |
setModified () | |
startJob () | |
stopJob (YadaJob job) | |
toDOM () | |
wait () | |
YadaMachine (TclList args) | |
~YadaMachine () | |
Public Attributes | |
TclString | access = "local" |
TclNumber | cpus = 1 |
TclRef | name |
TclList | nodes = {127.0.0.1} |
Protected Attributes | |
TclNumber | _modified = 0 |
Private Member Functions | |
_addTime (TclNumber time) | |
_getNextNode () | |
_startJob () | |
Private Attributes | |
TclString | _jobQueue = "" |
TclArray | _jobsOnNode |
TclNumber | _noComputedJobs = 10 |
TclString | _runQueue = "" |
TclNumber | _timePerJob = 60000 |
TclArray | _timerOfJob |
|
constructor Definition at line 91 of file YadaMachine.tcl. |
|
destructor Definition at line 355 of file YadaMachine.tcl. |
|
update machine statistics. This machine adds the given time to the internal timer statistics. Incremental averaging is computed like this:
|
|
_getNextNode This returns the next best node on the cluster, that is the one with the least jobs running on it. Definition at line 178 of file YadaMachine.tcl. |
|
_startJob remove the next YadaJob from the queue and run it Definition at line 231 of file YadaMachine.tcl. |
|
Displays title in main window (reflecting modification state of document). Definition at line 128 of file YadaConfigItem.tcl. |
|
Initialize Object with DOM node (that has saved the object state)
Reimplemented from YadaConfigItem. Definition at line 128 of file YadaMachine.tcl. |
|
getLoad Definition at line 201 of file YadaMachine.tcl. |
|
Getting unique file name from registry.
Implements YadaConfigItem. Definition at line 439 of file YadaMachine.tcl. |
|
getTimePerJob Definition at line 390 of file YadaMachine.tcl. References nodes. |
|
Predicate returning 1, if file containing persistant state of YadaGrammar exists, otherwise 0 Definition at line 115 of file YadaConfigItem.tcl. |
|
Predicate returning 1, if configuration data has changed, 0 otherwise. Definition at line 87 of file YadaConfigItem.tcl. |
|
Loads object state from unique file (depends on object name). Definition at line 66 of file YadaConfigItem.tcl. |
|
queueJob Definition at line 168 of file YadaMachine.tcl. |
|
Removes modification mark. Definition at line 105 of file YadaConfigItem.tcl. |
|
Serializes object state to unique file (depends on object name). Definition at line 45 of file YadaConfigItem.tcl. |
|
Marks item as modified. Definition at line 94 of file YadaConfigItem.tcl. |
|
startJob schedule jobs Definition at line 213 of file YadaMachine.tcl. |
|
stopJob Definition at line 313 of file YadaMachine.tcl. |
|
Serializes Object into a DOM-XML-Node
Reimplemented from YadaConfigItem. Definition at line 102 of file YadaMachine.tcl. |
|
waits for a cpu to become free. Calling wait will guarantee that no more jobs are running than cpus are in the cluster. Execution will be suspendend waiting for the _runQueue to change. Definition at line 156 of file YadaMachine.tcl. |
|
list of all YadaJob s queued up to be scheduled on all nodes Definition at line 45 of file YadaMachine.tcl. |
|
hash mapping machine node names to the YadaJob s running on them Definition at line 64 of file YadaMachine.tcl. |
|
number of jobs run on this machine. This number is related to _timePerJob computing the average duration seen in _noComputedJobs. Definition at line 57 of file YadaMachine.tcl. |
|
list of YadaJob s currently running on the nodes Definition at line 48 of file YadaMachine.tcl. |
|
statistics about the average duration of one YadaJob. The machine updates this figure the more jobs have been seen. Definition at line 52 of file YadaMachine.tcl. |
|
used for profiling jobs on this machine. This hash mapps YadaJob objects to a clock tick. Definition at line 61 of file YadaMachine.tcl. |
|
acess manor for this machine. possible values are "local" or any way of getting a shell on the nodes, i.e. ssh -x %node node is replaced with the actuall node name in YadaMachine::nodes to which a specific connection is to be established. Definition at line 41 of file YadaMachine.tcl. |
|
overall sum of cpus in all nodes Definition at line 34 of file YadaMachine.tcl. |
|
list ip adresses host names making up this machine callback whenever the -nodes attribute is set This a registers known nodes of a cluster by setting the number of running jobs in _jobsOnNode to 0. Formerly known nodes that aren't found in $nodes any more are removed from that array. Definition at line 400 of file YadaMachine.tcl. Referenced by getTimePerJob(). |