stats
Return cached values and statistics for MemoizedFunction
object
Syntax
Description
Examples
Create a MemoizedFunction
object by memoizing the plus
function.
mf = memoize(@plus)
mf = MemoizedFunction with properties: Function: @plus Enabled: 1 CacheSize: 10
Call the memoized function several times. The first time you call the function with a particular set of inputs, MATLAB® caches the results.
a = mf(13,42); % calls plus; caches results b = mf(7,33); % calls plus; caches results c = mf(13,42); % does not call plus; returns cached results d = mf(5,120); % calls plus; caches results e = mf(13,42); % does not call plus; returns cached results f = mf(7,33); % does not call plus; returns cached results
Call the stats
function.
s = stats(mf)
s = struct with fields:
Cache: [1×1 struct]
MostHitCachedInput: [1×1 struct]
CacheHitRatePercent: 50
CacheOccupancyPercent: 30
Determine which sets of inputs you used the most.
s.MostHitCachedInput
ans = struct with fields:
Hits: 2
Input: {[13] [42]}
Obtain the cached results.
c = s.Cache
c = struct with fields:
Inputs: {{1×2 cell} {1×2 cell} {1×2 cell}}
Nargout: [1 1 1]
Outputs: {{1×1 cell} {1×1 cell} {1×1 cell}}
HitCount: [2 1 0]
TotalHits: 3
TotalMisses: 3
Display all sets of cached inputs and outputs alongside how many times MATLAB accessed the cached values.
T = cell2table([c.Inputs' c.Outputs'],'VariableNames',{'Inputs','Outputs'}); T.Times_Cache_Accessed = c.HitCount'
T=3×3 table
Inputs Outputs Times_Cache_Accessed
_________________ _______ ____________________
{[13]} {[ 42]} {[ 55]} 2
{[ 7]} {[ 33]} {[ 40]} 1
{[ 5]} {[120]} {[125]} 0
Input Arguments
Function with memoization semantics, specified as a
MemoizedFunction
object.
Output Arguments
MemoizedFunction
statistics, returned as a structure
containing these fields.
Field | Description |
---|---|
| Cached results, returned as a structure. If
|
| Inputs for the most accessed cached values, returned as a structure. The structure contains the following fields:
|
| Percentage of times an input was found in the
cache, returned as a double. This property is computed
by
|
| How full the cache is, returned as a double
representing a percentage. This property is computed by
|
Version History
Introduced in R2017a
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)