stats
MemoizedFunction
オブジェクトのキャッシュされた値と統計を返す
説明
例
関数 plus
をメモ化して、MemoizedFunction
オブジェクトを作成します。
mf = memoize(@plus)
mf = MemoizedFunction with properties: Function: @plus Enabled: 1 CacheSize: 10
メモ化された関数を複数回呼び出します。特定の入力のセットを使ってはじめてこの関数を呼び出すと、MATLAB® はその結果をキャッシュします。
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
関数 stats
を呼び出します。
s = stats(mf)
s = struct with fields:
Cache: [1×1 struct]
MostHitCachedInput: [1×1 struct]
CacheHitRatePercent: 50
CacheOccupancyPercent: 30
どの入力のセットが最も多く使用されたかを判定します。
s.MostHitCachedInput
ans = struct with fields:
Hits: 2
Input: {[13] [42]}
キャッシュされた結果を取得します。
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
キャッシュされたすべての入力と出力のセットを、キャッシュされた値に MATLAB がアクセスした回数と共に表示します。
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
入力引数
メモ化セマンティクスをもつ関数。MemoizedFunction
オブジェクトとして指定します。
出力引数
MemoizedFunction
統計。次のフィールドを含む構造体として返されます。
フィールド | 説明 |
---|---|
| キャッシュされた結果。構造体として返されます。
|
| キャッシュされた値のうちアクセスの最も多かった値の入力。構造体として返されます。この構造体には、次のフィールドがあります。
|
| キャッシュ内で入力が検出された回数の割合。double として返されます。このプロパティは |
| キャッシュの占有率。割合を表す double として返されます。このプロパティは |
バージョン履歴
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.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)