Package jline.api.qsys
Class Qsys_ldps_workload
java.lang.Object
jline.api.qsys.Qsys_ldps_workload
-
Method Summary
Modifier and TypeMethodDescriptionstatic QsysWorkloadResultqsys_ldps_workload(double lambda, Distribution B, double[] alpha, int N) Convenience overload using the default grid and quadrature resolution.static QsysWorkloadResultqsys_ldps_workload(double lambda, Distribution B, double[] alpha, int N, double[] t, int ngrid) Stationary distribution of the quantity of work in a single-stage load-dependent processor sharing station with Poisson arrivals and blocking.
-
Method Details
-
qsys_ldps_workload
public static QsysWorkloadResult qsys_ldps_workload(double lambda, Distribution B, double[] alpha, int N, double[] t, int ngrid) Stationary distribution of the quantity of work in a single-stage load-dependent processor sharing station with Poisson arrivals and blocking. Assumed model (Cohen 1979, Sect. 9; the model of Sect. 7 with one stage): a single service stage fed by a Poisson arrival stream of rate lambda; a blocking capacity N, so that a request arriving when N requests are already present is lost and leaves no trace on the state; generalized processor sharing, so that when x requests are present each accrues service at rate f(x) and the stage completes work at total rate x*f(x); and required service times i.i.d. with absolutely continuous distribution B of finite mean beta. The station is parametrized by the LINE load-dependent total rate scaling alpha(x)=x*f(x), the argument of setLoadDependence at a PS station. With psi the total amount of service still to be given to the requests present, Cohen eqs. (9.1)-(9.3) give Pr{psi < y} = sum_{h=0}^{N} p_h Psi^{h*}(y), p_h = (rho^h/h!) phi(h) / sum_k (rho^k/k!) phi(k), rho = lambda*beta, phi(h) = 1/prod_{k=1}^{h} f(k), phi(0)=1, Psi(y) = int_0^y (1-B(v))/beta dv, with Psi^{h*} the h-fold convolution of Psi and Psi^{0*} degenerate at zero. Substituting f(k)=alpha(k)/k the factorial cancels, leaving p_h proportional to rho^h/prod_{k=1}^{h} alpha(k), the familiar load-dependent birth-death form. Psi is the equilibrium (residual life) distribution of B, so psi is a mixture of h-fold convolutions of residual service times with an atom p_0 at zero. This is the model of Cohen (1979) Sect. 9 only. It is not the weighted GPS/DPS discipline of SchedStrategy.GPS, whose per-class weights this formula does not represent.- Parameters:
lambda- rate of the Poisson arrival stream (finite, positive)B- required service time distribution (continuous, finite positive mean)alpha- rate scaling alpha(n)=n*f(n) for n=1..N (finite, positive)N- blocking capacity (finite positive integer)t- grid at which the CDF is returned, or null for an automatically sized gridngrid- number of points of the internal uniform quadrature grid, or 0 for the default of 2001. Accuracy is second order in the step for an absolutely continuous B, the case Cohen assumes, and falls back to first order when B has an atom so that 1-B is discontinuous; raise ngrid for those.- Returns:
- the workload CDF, the grid it is reported on, and the stationary number in system
-
qsys_ldps_workload
public static QsysWorkloadResult qsys_ldps_workload(double lambda, Distribution B, double[] alpha, int N) Convenience overload using the default grid and quadrature resolution.- Parameters:
lambda- rate of the Poisson arrival streamB- required service time distributionalpha- rate scaling alpha(n)=n*f(n) for n=1..NN- blocking capacity- Returns:
- the workload CDF, its grid, and the stationary number in system
-