LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
pfqn_mwrbb.h File Reference

Majumdar-Woodside robust box bounds on the per-class throughput of a closed multiclass network with mixed scheduling disciplines (Perf. More...

#include <algorithm>
#include <cstddef>
#include <vector>
#include "line/num/number.h"
#include "line/util/error.h"
#include "line/util/matrix.h"
Include dependency graph for pfqn_mwrbb.h:

Go to the source code of this file.

Classes

struct  line::pfqn::MwrbbBounds< T >
 Return value of pfqn_mwrbb, mirroring [Xlo, Xup, Wlo]. More...

Namespaces

namespace  line
namespace  line::pfqn

Enumerations

enum class  line::pfqn::MwrbbSched {
  line::pfqn::Fifo = 0 , line::pfqn::Ps = 1 , line::pfqn::PrioNonPreemptive = 2 , line::pfqn::PrioPreemptive = 3 ,
  line::pfqn::Aba = 4
}
 Station discipline codes, matching the MATLAB sched argument. More...

Functions

template<class T>
MwrbbBounds< T > line::pfqn::pfqn_mwrbb (const Matrix< T > &V, const Matrix< T > &S, const std::vector< T > &N, const std::vector< T > &Z, const std::vector< MwrbbSched > &sched, const std::vector< int > &prio)
 Majumdar-Woodside robust box bounds on the per-class throughput of a closed multiclass network with mixed scheduling disciplines (Perf.
template<class T>
MwrbbBounds< T > line::pfqn::pfqn_mwrbb (const Matrix< T > &V, const Matrix< T > &S, const std::vector< T > &N, const std::vector< T > &Z)

Detailed Description

Majumdar-Woodside robust box bounds on the per-class throughput of a closed multiclass network with mixed scheduling disciplines (Perf.

Eval. 32 (1998) 101-136).

Templated port of matlab/src/api/pfqn/pfqn_mwrbb.m together with its three local functions mwrbb_denom, mwrbb_station_wrest and mwrbb_residence. The upper bound intersects the no-contention bound (eq. 2) with the utilization bound (eq. 3); the lower bound is the throughput guarantee of Theorem 2 (eq. 15), whose per-visit queueing delay depends on the discipline at the station: FIFO (Theorem 1 / Lemma 1), processor sharing (Lemma 2), preemptive priority (Lemma 3) and non-preemptive priority (Lemmas 4-5). The coupled inequalities are resolved by interval narrowing.

The bounds are distribution-insensitive (NBUE service only) and routing insensitive: mean visits, mean demands, populations, think times, disciplines and priorities are the whole input.

ARITHMETIC. Only sums, products, minima and divisions appear, so the bounds are EXACT in rational arithmetic and are deliberately left ungated. The fixed point is a monotone narrowing whose stopping rule (1e-13 absolute on both bound vectors) is a double constant converted into T, so a higher precision instantiation stops at the same place, not further – the remaining slack there is the bound's, not the iteration's.

Definition in file pfqn_mwrbb.h.