Safe Haskell | None |
---|

Implementation of the cluster metric

## Synopsis

- reservedMemRtotalCoeff :: Double
- detailedCVInfoExt :: [((Double, String), ([AggregateComponent] -> Statistics, Bool))]
- optimalCVScore :: List -> Double
- detailedCVInfo :: [(Double, String)]
- detailedCVWeights :: [Double]
- detailedCVAggregation :: [([AggregateComponent] -> Statistics, Bool)]
- detailedCVOnlineStatus :: [Bool]
- compDetailedCVNode :: Node -> [AggregateComponent]
- compClusterStatistics :: [Node] -> [Statistics]
- updateClusterStatistics :: [Statistics] -> (Node, Node) -> [Statistics]
- updateClusterStatisticsTwice :: [Statistics] -> (Node, Node) -> (Node, Node) -> [Statistics]
- compDetailedCV :: [Node] -> [Double]
- compCVfromStats :: [Statistics] -> Double
- compCVNodes :: [Node] -> Double
- compCV :: List -> Double
- printStats :: String -> List -> String

# Documentation

reservedMemRtotalCoeff :: Double Source #

Coefficient for the total reserved memory in the cluster metric. We use a (local) constant here, as it is also used in the computation of the best possible cluster score.

detailedCVInfoExt :: [((Double, String), ([AggregateComponent] -> Statistics, Bool))] Source #

The names and weights of the individual elements in the CV list, together with their statistical accumulation function and a bit to decide whether it is a statistics for online nodes.

optimalCVScore :: List -> Double Source #

Compute the lower bound of the cluster score, i.e., the sum of the minimal values for all cluster score values that are not 0 on a perfectly balanced cluster.

detailedCVInfo :: [(Double, String)] Source #

The names and weights of the individual elements in the CV list.

detailedCVWeights :: [Double] Source #

Holds the weights used by `compCVNodes`

for each metric.

detailedCVAggregation :: [([AggregateComponent] -> Statistics, Bool)] Source #

The aggregation functions for the weights

detailedCVOnlineStatus :: [Bool] Source #

The bit vector describing which parts of the statistics are for online nodes.

compDetailedCVNode :: Node -> [AggregateComponent] Source #

Compute statistical measures of a single node.

compClusterStatistics :: [Node] -> [Statistics] Source #

Compute the statistics of a cluster.

updateClusterStatistics :: [Statistics] -> (Node, Node) -> [Statistics] Source #

Update a cluster statistics by replacing the contribution of one node by that of another.

updateClusterStatisticsTwice :: [Statistics] -> (Node, Node) -> (Node, Node) -> [Statistics] Source #

Update a cluster statistics twice.

compDetailedCV :: [Node] -> [Double] Source #

Compute cluster statistics

compCVfromStats :: [Statistics] -> Double Source #

Compute the cluster score from its statistics

compCVNodes :: [Node] -> Double Source #

Compute the *total* variance.

printStats :: String -> List -> String Source #

Shows statistics for a given node list.