LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
ld_multiserver_ps_twoclasses.m
1clear node jobclass
2
3N = 4; % number of jobs
4c = 2; % number of servers
5%%
6model = Network('model');
7node{1} = Delay(model, 'Delay');
8node{2} = Queue(model, 'Queue1', SchedStrategy.PS);
9jobclass{1} = ClosedClass(model, 'Class1', N, node{1}, 0);
10jobclass{2} = ClosedClass(model, 'Class2', N/2, node{1}, 0);
11node{1}.setService(jobclass{1}, Exp.fitMean(1.0)); % mean = 1
12node{1}.setService(jobclass{2}, Exp.fitMean(2.0)); % mean = 1
13node{2}.setService(jobclass{1}, Exp.fitMean(1.5)); % mean = 1.5
14node{2}.setService(jobclass{2}, Exp.fitMean(2.5)); % mean = 1.5
15node{2}.setNumberOfServers(c);
16
17P = model.initRoutingMatrix();
18P{1,1} = model.serialRouting(node);
19P{2,2} = model.serialRouting(node);
20model.link(P);
21
22msT=MVA(model,'exact').getAvgTable
23%%
24ldmodel = Network('ldmodel');
25node{1} = Delay(ldmodel, 'Delay');
26node{2} = Queue(ldmodel, 'Queue1', SchedStrategy.PS);
27jobclass{1} = ClosedClass(ldmodel, 'Class1', N, node{1}, 0);
28jobclass{2} = ClosedClass(ldmodel, 'Class2', N/2, node{1}, 0);
29node{1}.setService(jobclass{1}, Exp.fitMean(1.0)); % mean = 1
30node{1}.setService(jobclass{2}, Exp.fitMean(2.0)); % mean = 1
31node{2}.setService(jobclass{1}, Exp.fitMean(1.5)); % mean = 1.5
32node{2}.setService(jobclass{2}, Exp.fitMean(2.5)); % mean = 1.5
33node{2}.setLoadDependence(min(1:(N+N/2),c)); % multi-server with c servers
34
35P = ldmodel.initRoutingMatrix();
36P{1,1} = ldmodel.serialRouting(node);
37P{2,2} = ldmodel.serialRouting(node);
38ldmodel.link(P);
39
40lldAvgTableCTMC=CTMC(ldmodel).getAvgTable %exact
41
42lldAvgTableNC=NC(ldmodel).getAvgTable %exact
43lldAvgTableRD=NC(ldmodel,'method','rd').getAvgTable
44lldAvgTableNRP=NC(ldmodel,'method','nrp').getAvgTable
45lldAvgTableNRL=NC(ldmodel,'method','nrl').getAvgTable
46
47lldAvgTableMVALD=MVA(ldmodel,'method','exact').getAvgTable
48lldAvgTableQD=MVA(ldmodel,'method','qd').getAvgTable
49
50lldAvgTableJMT=JMT(ldmodel,'seed',23000,'samples',5000).getAvgTable