LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
lqn_function.m
1% example of layered model with a function task
2fprintf(1, 'Example of layered model with a function task (FaaS)\n');
3
4clear solver AvgTable
5
6model = LayeredNetwork('faas_test_example');
7
8% definition of processors, tasks and entries
9P1 = Processor(model, 'P1', Inf, SchedStrategy.INF);
10P2 = Processor(model, 'P2', 4, SchedStrategy.FCFS);
11
12T1 = Task(model, 'T1', 1, SchedStrategy.REF).on(P1);
13E1 = Entry(model, 'E1').on(T1);
14
15%T2 = Task(model, 'T2', 1, SchedStrategy.FCFS).on(P2);
16T2 = FunctionTask(model, 'F2', 6, SchedStrategy.FCFS).on(P2).setThinkTime(Exp.fitMean(8.0));
17T2.setSetupTime(Exp(1.0));
18T2.setDelayOffTime(Exp(2.0));
19
20E2 = Entry(model, 'E2').on(T2);
21
22% T3 = Task(model, 'T3', 1, SchedStrategy.FCFS).on(P2);
23% E3 = Entry(model, 'E3').on(T3);
24
25% definition of activities
26A1 = Activity(model, 'A1', Exp(1.0)).on(T1).boundTo(E1).synchCall(E2,1);
27A2 = Activity(model, 'A2', Exp(3.0)).on(T2).boundTo(E2).repliesTo(E2);
28% A3 = Activity(model, 'A3', Exp(5.0)).on(T3).boundTo(E3).repliesTo(E3);
29
30
31lnoptions = LN.defaultOptions;
32lnoptions.verbose = 0;
33lnoptions.seed = 23000;
34% options = MVA.defaultOptions;
35% options.verbose = 0;
36% options2 = MAM.defaultOptions;
37% options2.verbose = 0;
38solver{1} = LN(model, @(m) MVA(m), lnoptions);
39AvgTable{1} = solver{1}.getAvgTable;
40fprintf(1, '\nLN(MVA) Results:\n');
41disp(AvgTable{1});