![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Saddle-point approximation of the per-item cache hit probabilities. More...
#include <cmath>#include <cstddef>#include <vector>#include "line/api/cache/cache_erec.h"#include "line/api/cache/cache_spm.h"#include "line/num/number.h"#include "line/util/error.h"#include "line/util/matrix.h"Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::cache |
Functions | |
| template<class T> | |
| Matrix< T > | line::cache::cache_prob_spm (const Matrix< T > &gamma, const std::vector< int > &m) |
| Saddle-point approximation of the per-item cache hit probabilities. | |
Saddle-point approximation of the per-item cache hit probabilities.
Templated port of matlab/src/api/cache/cache_prob_spm.m, cross-checked against jar/src/main/java/jline/api/cache/Cache_prob_rayint.java (the JAR's only implementation of this shape; see the note below).
Same ratio-of-constants identity as cache_prob_erec,
prob(i,1+j) = m(j) gamma(i,j) exp(lE_i - lE),
with lE the log normalizing constant from cache_spm and lE_i the same quantity for the model with item i deleted and list j one slot smaller. The miss probability closes the row. Because both constants are approximations the rows only sum to one up to the saddle-point error, which is why the reference wraps the miss entry in abs().
ARITHMETIC: transcendental, inherited from cache_spm.
Definition in file cache_prob_spm.h.