LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
solver_nc_cacheqn_retrieval_analyzer.m
1function [QN,UN,RN,TN,CN,XN,lG,hitprob,missprob,delayedprob,hitproblist,itemprob,latency,runtime,method] = solver_nc_cacheqn_retrieval_analyzer(sn, options)
2% [...] = SOLVER_NC_CACHEQN_RETRIEVAL_ANALYZER(SN, OPTIONS)
3%
4% NC analyzer for a CLOSED integrated cache-queueing model whose Cache node has a
5% delayed-hit retrieval system. Delegates to da_cacheqn_retrieval with an NC
6% network solve (load-dependent when the coalescing fetch station is present).
7% Returns the true cache hit/miss probabilities (hit = P(item cached),
8% miss = 1 - hit); the delayed-hit fraction folds into miss (delayedprob = 0).
9%
10% Copyright (c) 2012-2026, Imperial College London
11% All rights reserved.
12
13T0 = tic;
14[res, hitprob, missprob, delayedprob, ~, ~] = da_cacheqn_retrieval(sn, @netsolve, options);
15
16QN = res.QN; UN = res.UN; RN = res.RN; TN = res.TN; XN = res.XN;
17if isfield(res,'CN'), CN = res.CN; else, CN = NaN(1, sn.nclasses); end
18if isfield(res,'lG'), lG = res.lG; else, lG = NaN; end
19
20K = sn.nclasses;
21hitproblist = NaN(K, numel(sn.nodeparam{find(sn.nodetype==NodeType.Cache,1)}.itemcap));
22itemprob = [];
23latency = NaN(1, K);
24method = 'fpi';
25runtime = toc(T0);
26
27 function res = netsolve(snit)
28 res = struct();
29 if ~isempty(snit.lldscaling) || ~isempty(snit.cdscaling)
30 [res.Q,res.U,res.R,res.T,res.C,res.X,res.lG,res.runtime] = solver_ncld_analyzer(snit, options);
31 else
32 [res.Q,res.U,res.R,res.T,res.C,res.X,res.lG,res.runtime] = solver_nc_analyzer(snit, options);
33 end
34 res.QN = res.Q; res.UN = res.U; res.RN = res.R; res.TN = res.T; res.XN = res.X; res.CN = res.C;
35 end
36end
Definition Station.m:245