overhead-USL-method: Overhead method for Universal Scalability Law models

overhead,USL-methodR Documentation

Overhead method for Universal Scalability Law models

Description

overhead calculates the overhead in processing time for a system modeled with the Universal Scalability Law. It evaluates the regression function in the frame newdata (which defaults to model.frame(object)). The result contains the ideal processing time and the additional overhead caused by contention and coherency delays.

Usage

## S4 method for signature 'USL'
overhead(object, newdata)

Arguments

object

A USL model object for which the overhead will be calculated.

newdata

An optional data frame in which to look for variables with which to calculate the overhead. If omitted, the fitted values are used.

Details

The calculated processing times are given as percentages of a non-parallelized workload. So for a non-parallelized workload the ideal processing time will always be given as 100% while the overhead for contention and coherency will always be zero.

Doubling the capacity will cut the ideal processing time in half but increase the overhead percentages. The increase of the overhead depends on the values of the parameters alpha and beta estimated by usl.

The calculation is based on A General Theory of Computational Scalability Based on Rational Functions, equation 26.

Value

overhead produces a matrix of overhead percentages based on a non-parallelized workload. The column ideal contains the ideal percentage of execution time. The columns contention and coherency give the additional overhead percentage caused by the respective effects.

References

Neil J. Gunther. Guerrilla Capacity Planning: A Tactical Approach to Planning for Highly Scalable Applications and Services. Springer, Heidelberg, Germany, 1st edition, 2007.

Neil J. Gunther. A General Theory of Computational Scalability Based on Rational Functions. Computing Research Repository, 2008. http://arxiv.org/abs/0808.1431

See Also

usl, USL-class

Examples

require(usl)

data(specsdm91)

## Print overhead in processing time for demo dataset
overhead(usl(throughput ~ load, specsdm91))


smoeding/usl documentation built on Oct. 1, 2022, 3:14 a.m.