Crate usl[][src]

Expand description

Types and functions for building Universal Scalability Law models from sets of observed measurements.

use usl::{Model, Measurement};
let measurements = vec![
    Measurement::concurrency_and_throughput(1, 955.16),
    Measurement::concurrency_and_throughput(5, 4315.54),
    Measurement::concurrency_and_throughput(10, 7867.61),
    Measurement::concurrency_and_throughput(15, 9645.37),
    Measurement::concurrency_and_throughput(20, 10798.52),
    Measurement::concurrency_and_throughput(25, 12075.41),
    Measurement::concurrency_and_throughput(30, 12118.04),
];
let model = Model::build(&measurements);
println!("{}", model.throughput_at_concurrency(100));

Structs

Measurement

A simultaneous measurement of at least two of the parameters of Little’s Law: concurrency, throughput, and latency. The third parameter is inferred from the other two.

Model

A Universal Scalability Law model.

Constants

MIN_MEASUREMENTS

The minimum number of measurements required to build a model.