Package jline.solvers.ln
Class SolverLN
-
- All Implemented Interfaces:
public class SolverLN extends EnsembleSolver
Solver for Layered Queueing Networks (LQN) using ensemble-based iterative methods.
SolverLN implements layered queueing network analysis through decomposition into simpler queueing models. LQNs extend traditional queueing networks by modeling software systems with nested service requests, where servers can act as clients to other services, creating layered dependencies.
Key LQN solver capabilities:
- Multi-layer model decomposition and iteration
- Software system modeling with nested service calls
- Client-server interaction patterns
- Convergence detection across model layers
- Ensemble-based performance analysis
The solver iterates between layers, updating service demands and arrival rates until convergence is achieved across all layers. This enables analysis of complex distributed software architectures and service-oriented systems.
- Since:
1.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
SolverLN.recurActGraphReturnType
-
Field Summary
-
Constructor Summary
Constructors Constructor Description SolverLN(LayeredNetwork lqnmodel)
SolverLN(LayeredNetwork lqnmodel, SolverFactory solverFactory)
SolverLN(LayeredNetwork lqnmodel, SolverOptions options)
SolverLN(LayeredNetwork lqnmodel, SolverType solverType)
SolverLN(LayeredNetwork lqnmodel, SolverType solverType, SolverOptions options)
SolverLN(LayeredNetwork lqnmodel, SolverType solverType, LNOptions lnOptions, SolverOptions solverOptions)
SolverLN(LayeredNetwork lqnmodel, SolverFactory solverFactory, SolverOptions options)
-
Method Summary
-
Methods inherited from class jline.solvers.EnsembleSolver
ensembleAvg, getNumThreads, getNumberOfModels, iterate, numThreads, numberOfModels, printEnsembleAvgTables, setNumThreads
-
Methods inherited from class jline.solvers.Solver
getName, getOptions, getResults, hasResults, isJavaAvailable, isValidOption, listValidOptions, parseOptions, parseOptions, reset, resetRandomGeneratorSeed, runAnalyzerChecks, setChecks, setOptions, supports
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
SolverLN
SolverLN(LayeredNetwork lqnmodel)
-
SolverLN
SolverLN(LayeredNetwork lqnmodel, SolverFactory solverFactory)
-
SolverLN
SolverLN(LayeredNetwork lqnmodel, SolverOptions options)
-
SolverLN
SolverLN(LayeredNetwork lqnmodel, SolverType solverType)
-
SolverLN
SolverLN(LayeredNetwork lqnmodel, SolverType solverType, SolverOptions options)
-
SolverLN
SolverLN(LayeredNetwork lqnmodel, SolverType solverType, LNOptions lnOptions, SolverOptions solverOptions)
-
SolverLN
SolverLN(LayeredNetwork lqnmodel, SolverFactory solverFactory, SolverOptions options)
-
-
Method Detail
-
defaultOptions
static SolverOptions defaultOptions()
-
analyze
SolverResult analyze(int it, int e)
-
buildLayers
void buildLayers()
-
buildLayersRecursive
void buildLayersRecursive(int idx, List<Integer> callers, boolean ishostlayer)
-
construct
void construct()
-
converged
boolean converged(int it)
-
finish
void finish()
-
getArvproc_classes_updmap
Matrix getArvproc_classes_updmap()
-
getAvgTable
AvgTable getAvgTable()
-
getCall_classes_updmap
Matrix getCall_classes_updmap()
-
getEnsemble
List<Network> getEnsemble()
-
getEnsembleAvg
AvgTable getEnsembleAvg()
-
getEntryServiceMatrix
Matrix getEntryServiceMatrix()
-
getEntryServiceMatrixRecursion
Matrix getEntryServiceMatrixRecursion(LayeredNetworkStruct lqn, int aidx, int eidx, Matrix U)
-
getIdxhash
List<Double> getIdxhash()
-
getRoute_prob_updmap
Matrix getRoute_prob_updmap()
-
getServt_classes_updmap
Matrix getServt_classes_updmap()
-
getThinkt_classes_updmap
Matrix getThinkt_classes_updmap()
-
init
void init()
-
post
void post(int it)
-
pre
void pre(int it)
-
runAnalyzer
void runAnalyzer()
Executes the solver algorithm to analyze the model. This abstract method must be implemented by concrete solver classes.
-
updateLayers
void updateLayers(int it)
-
updateMetrics
void updateMetrics(int it)
-
updateMetricsDefault
void updateMetricsDefault(int it)
-
updateMetricsMomentBased
void updateMetricsMomentBased(int it)
-
updatePopulations
void updatePopulations(int it)
-
updateRoutingProbabilities
void updateRoutingProbabilities(int it)
-
updateThinkTimes
void updateThinkTimes(int it)
-
-
-
-