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