LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
cache_replc_rr.m
1clear solver AvgTable;
2
3model = Network('model');
4
5n = 5; % number of items
6m = 2; % cache capacity
7
8source = Source(model, 'Source');
9cacheNode = Cache(model, 'Cache', n, m, ReplacementStrategy.RR);
10sink = Sink(model, 'Sink');
11
12jobClass = OpenClass(model, 'InitClass', 0);
13hitClass = OpenClass(model, 'HitClass', 0);
14missClass = OpenClass(model, 'MissClass', 0);
15
16source.setArrival(jobClass, Exp(2));
17
18%pAccess = DiscreteSampler((1/n)*ones(1,n)); % uniform item references
19pAccess = Zipf(1.4, n); % Zipf-like item references
20cacheNode.setRead(jobClass, pAccess);
21
22
23cacheNode.setHitClass(jobClass, hitClass);
24cacheNode.setMissClass(jobClass, missClass);
25
26P = model.initRoutingMatrix;
27
28P{jobClass, jobClass}(source, cacheNode) = 1.0;
29P{hitClass, hitClass}(cacheNode, sink) = 1.0;
30P{missClass, missClass}(cacheNode, sink) = 1.0;
31
32model.link(P);
33%%
34solver{1} = CTMC(model,'keep',false,'cutoff',1);
35AvgTable{1} = solver{1}.getAvgNodeTable; AvgTable{1}
36
37model.reset;
38solver{2} = SSA(model,'samples',1e4,'verbose',true,'method','serial','seed',23000);
39AvgTable{2} = solver{2}.getAvgNodeTable; AvgTable{2}
40
41model.reset;
42solver{3} = MVA(model);
43AvgTable{3} = solver{3}.getAvgNodeTable; AvgTable{3}
44
45model.reset;
46solver{4} = NC(model);
47AvgTable{4} = solver{4}.getAvgNodeTable; AvgTable{4}
48
49hitRatio=cacheNode.getHitRatio
50missRatio=cacheNode.getMissRatio