LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
lcq_singlehost.m
1clear solver AvgTable;
2
3model = LayeredNetwork('cacheInLayeredNetwork');
4
5%% client
6P1 = Processor(model, 'P1', 1, SchedStrategy.PS);
7T1 = Task(model, 'T1', 1, SchedStrategy.REF).on(P1);
8E1 = Entry(model, 'E1').on(T1);
9
10%% cachetask
11totalitems = 4;
12cachecapacity = 2;
13pAccess = DiscreteSampler((1/totalitems)*ones(1,totalitems));
14PC = Processor(model, 'PC', 1, SchedStrategy.PS);
15C2 = CacheTask(model, 'C2', totalitems, cachecapacity, ReplacementStrategy.RR, 1).on(PC);
16I2 = ItemEntry(model, 'I2', totalitems, pAccess).on(C2);
17
18%% definition of activities
19A1 = Activity(model, 'A1', Immediate()).on(T1).boundTo(E1).synchCall(I2,1);
20AC2 = Activity(model, 'AC2', Immediate()).on(C2).boundTo(I2);
21AC2h = Activity(model, 'AC2h', Exp(1.0)).on(C2).repliesTo(I2);
22AC2m = Activity(model, 'AC2m', Exp(0.5)).on(C2).repliesTo(I2);
23
24C2.addPrecedence(ActivityPrecedence.CacheAccess(AC2, {AC2h, AC2m}));
25
26lnoptions = LN.defaultOptions;
27%lnoptions.iter_max = 1;
28lnoptions.verbose = VerboseLevel.STD;
29options = MVA.defaultOptions;
30options.verbose = VerboseLevel.SILENT;
31solver{1} = LN(model, @(model) MVA(model, options), lnoptions);
32AvgTable = {};
33AvgTable{1} = solver{1}.getAvgTable;
34AvgTable{1}