ホーム コンピュータ キャッシュヒット率と実効アクセス時間(AMAT)の計算 作成日: 2026年7月20日 21:33 キャッシュヒット率と実効アクセス時間(AMAT)の計算 入力 ヒット率95 %ヒット時間1 nsミスペナルティ100 ns コンピュータ キャッシュヒット率と実効アクセス時間(AMAT)の計算 キャッシュのヒット率、ヒット時間、ミスペナルティから、平均メモリアクセス時間(AMAT)とミス率を求め、キャッシュが実効レイテンシに与える影響を確認する。 入力 キャッシュパラメータ ヒット率 % 0 – 100 % アクセスのうちキャッシュ内で見つかる割合。百分率で表す。 80%90%95%99% ヒット時間 ns データがすでにキャッシュ内にある場合(ヒット)のアクセス時間。 ミスペナルティ ns アクセスがミスしたときに、次のレベルのメモリからデータを取得するためにヒット時間を超えて余分にかかる時間。 結果 値を入力すると計算結果が表示されます。 平均アクセス時間 平均メモリアクセス時間 ns ヒット率 95 %、ヒット時間 1 ns、ミスペナルティ 100 ns のもとで、ヒットとミスを通じたアクセスあたりの平均時間。 ミス率 ミス率 % アクセスのうちキャッシュ内で見つからない割合。1 からヒット率 95 % を引いた値に等しい。 共有 レポートを印刷 リセット 埋め込み この計算機を埋め込む プレビュー このコードをページに貼り付けると計算機を表示できます。 コードをコピー この計算を共有 このリンクを開くと、入力した値がそのまま表示されます。 リンクをコピー 共有する XFacebookLINE メール 最終更新: 2026-06-29 キャッシュヒット率と実効アクセス時間(AMAT) キャッシュは、頻繁に使うデータを高速な記憶領域に保持することでデータへのアクセスを高速化するが、その効果はデータが実際にそこで見つかる頻度に比例する。本計算は、キャッシュのヒット率、ヒット時間、ミス時のペナルティから、平均メモリアクセス時間(AMAT)、すなわちシステムが平均的にどれだけ速く感じられるかを表す単一の数値を、ミス率とともに求める。 AMAT の式 すべてのアクセスは、データをキャッシュ内で見つける(ヒット)か、見つけない(ミス)かのいずれかである。ヒットはヒット時間を要し、ミスはヒット時間に加えて、より遅いメモリからデータを取得するペナルティを要する。多数のアクセスにわたって平均すると、次のようになる。 AMAT=th+m⋅tm\text{AMAT} = t_h + m \cdot t_m ここで tht_h はヒット時間、tmt_m はミスペナルティ、mm はミス率である。ミス率は単に 1 からヒット率を引いた値である。 m=1−hm = 1 - h すべてのアクセスが tht_h を支払い、割合 mm のみが tmt_m を支払うため、ヒット率の高いキャッシュは平均を高速なヒット時間に近づける。 計算例 ヒット率 95%、ヒット時間 1 ns、次のレベルに到達するミスペナルティ 100 ns の L1 キャッシュを考える。 AMAT=th+(1−h) tm=1 ns+0.05×100 ns=1 ns+5 ns=6 ns\begin{aligned} \text{AMAT} &= t_h + (1 - h)\, t_m \\ &= 1\ \text{ns} + 0.05 \times 100\ \text{ns} \\ &= 1\ \text{ns} + 5\ \text{ns} = 6\ \text{ns} \end{aligned}AMAT=th+(1−h)tm=1 ns+0.05×100 ns=1 ns+5 ns=6 ns アクセスの 95% が高速であるにもかかわらず、平均アクセス時間はヒット時間の 6 倍である。ミスペナルティがヒット時間の 100 倍であるため、ミスする 5% のアクセスがコストの大部分を占める。 ミス率が見た目以上に重要な理由 キャッシュ調整における効果の大きさは、ヒット時間とミスペナルティの大きな差から生まれる。上の例でヒット率を 95% から 99% へ上げると、AMAT は 6 ns から 2 ns へと下がる。これは 4 ポイントのヒット率の変化からおおよそ 3 分の 1 への改善である。これが、局所性、プリフェッチ、キャッシュサイズのわずかな改善が不釣り合いに大きな効果を生む理由であり、ミスペナルティを直接攻める価値がある理由である。 階層への拡張 現代のプロセッサは、主記憶の前に複数のキャッシュ(L1、L2、L3)を重ねている。式は自然に入れ子になる。ある階層のミスペナルティは、その下の階層の AMAT である。階層を分析するには、最も深い階層を先に計算し、その結果を上へ、1 つ上の階層のミスペナルティとして与える。リクエストの経路全体でアクセスレイテンシがどのように合算されるかの全体像については、レイテンシバジェットの計算 を参照されたい。 これらの数値は安定したアクセスパターンを仮定している。実際のワークロードは変動するため、AMAT は個々のアクセスに対する保証ではなく、代表的な平均として扱う。 よくある質問 (FAQ)平均メモリアクセス時間(AMAT)とは平均メモリアクセス時間は、キャッシュにヒットしたアクセスとミスしたアクセスを平均した、プロセッサがデータを待つ平均時間である。標準的な式は AMAT = ヒット時間 + ミス率 × ミスペナルティである。すべてのアクセスはヒット時間を支払い、ミスする割合のみがさらに、より遅いメモリから取得するペナルティを支払う。AMAT は、キャッシュが実際にどれだけ役立っているかを表す単一の数値である。 ヒット率とミス率の違いは両者は同じものを別の角度から見たものである。ヒット率はキャッシュから供給されるアクセスの割合、ミス率はそうでないアクセスの割合である。両者の和は常に 1 になるため、95% のヒット率は 5% のミス率である。キャッシュの設計者は、見栄えのよい数値としてヒット率を、性能を分析する際にはミス率を報告するのが普通である。ミス率こそが、高くつくミスペナルティに掛かる量だからである。 わずかなミスがこれほど性能を損なうのはなぜかミスペナルティがヒット時間の 1 桁から 2 桁大きいことがしばしばあるからである。ヒットに 1 ns、ミスに 100 ns かかるとすると、わずか 5% のミス率でも 5 ns が加わり、これはヒット時間そのものの 5 倍に当たる。これが、ヒット率を 95% から 99% へ改善すると実効アクセス時間がおおよそ半分になりうる理由であり、また(たとえばより深いキャッシュ階層によって)ミスペナルティを減らすことが、ヒット率を上げることと同じだけ価値を持つ理由である。 これは多階層キャッシュにどう拡張されるか実際のプロセッサは複数のキャッシュ階層(L1、L2、L3)を備え、それらが主記憶へとつながっている。AMAT の式は入れ子になる。すなわち、ある階層のミスペナルティは、それ自体が 1 つ下の階層の AMAT である。したがって AMAT = L1 ヒット時間 + L1 ミス率 × (L2 ヒット時間 + L2 ミス率 × (…)) となる。本計算は単一階層をモデル化する。階層を分析するには、最も深い階層を先に計算し、その AMAT を 1 つ上の階層のミスペナルティとして与える。 次のおすすめ リトルの法則の計算 リトルの法則(L = λW)を用いて、安定した待ち行列における平均同時実行数、スループット、レイテンシの関係を求める。系内の個数、到着率、平均滞在時間のいずれかを解く。 詳しく解説レイテンシバジェットの計算 ネットワークのレイテンシを4つの要素(伝搬遅延、シリアライズ遅延、キューイング遅延、処理遅延)に分解し、片道遅延とラウンドトリップタイムを求めます。接続がどこで時間を費やしているかを切り分けるのに役立ちます。 詳しく解説M/M/1 待ち行列の計算 到着率とサービス率から、単一サーバの M/M/1 待ち行列における平均待ち時間、応答時間、待ち行列長、利用率を求める。 詳しく解説 200+ ツール · 10 言語対応 · 完全無料 性能・待ち行列の他の計算 Apdex スコアの計算CPU実行時間 計算ツールIOPS とスループットの変換M/M/1 待ち行列の計算M/M/c 待ち行列計算ツールキャッシュヒット率と実効アクセス時間(AMAT)の計算 +6 more Show less アーランC 要員数計算アムダールの法則の計算グスタフソンの法則の計算バッテリー駆動時間の計算ツールリトルの法則の計算平均メモリアクセス時間(AMAT)の計算 コンピュータの他のカテゴリ ネットワーク 1秒あたりパケット数(pps)の計算CIDRとサブネットマスクの変換IPv4 アドレス表現の変換IPv6サブネットの計算IPアドレス範囲の計算IPスーパーネットの計算MTU から MSS の計算TCP スループットの計算サブネットの計算レイテンシバジェットの計算帯域幅遅延積(BDP)の計算セキュリティ・暗号 chmodパーミッションの計算UUID 衝突確率の計算パスワードのエントロピーハッシュ衝突確率の計算データ・エンコード 2の補数変換Base64エンコードのオーバーヘッドCRCチェックサムGit リポジトリのクローンサイズ推定IEEE 754 浮動小数点ビット表現QRコードの収容文字数Unixタイムスタンプ変換(エポック ⇄ 日時)UTF-8バイト数計算ツールオーディオファイルサイズ計算カラーコードの変換スループット (bps) 換算データ転送時間の計算テキスト → 2進数 / 16進数 / ASCII 変換ナイキストサンプリングレート計算ツールブルームフィルタ サイズ計算メガピクセル・印刷サイズ計算メモリアドレスビット計算圧縮率の計算画素密度(PPI・DPI)の計算画像ファイルサイズの計算色深度・ビット/ピクセルの計算動画ビットレートとファイルサイズ配信帯域幅の計算浮動小数点精度の計算アルゴリズム Luhn チェックディジットの計算シャノンエントロピーの計算ハミング距離の計算ビッグO記法の増加率レーベンシュタイン距離の計算信頼性・ストレージ APIレート制限の計算cron式デコーダー・次回実行時刻の計算MTBF・MTTR・稼働率 計算ツールRAID容量の計算クラウドストレージ料金の計算ハミング符号 ECCビット数計算ツール稼働率SLAの計算複合可用性の計算 この計算機は役に立ちましたか? 役に立った 改善が必要 改善が必要 どのような点が改善されると良いですか? フィードバックを送信 Powered by OneCalc ↗
最終更新: 2026-06-29 キャッシュヒット率と実効アクセス時間(AMAT) キャッシュは、頻繁に使うデータを高速な記憶領域に保持することでデータへのアクセスを高速化するが、その効果はデータが実際にそこで見つかる頻度に比例する。本計算は、キャッシュのヒット率、ヒット時間、ミス時のペナルティから、平均メモリアクセス時間(AMAT)、すなわちシステムが平均的にどれだけ速く感じられるかを表す単一の数値を、ミス率とともに求める。 AMAT の式 すべてのアクセスは、データをキャッシュ内で見つける(ヒット)か、見つけない(ミス)かのいずれかである。ヒットはヒット時間を要し、ミスはヒット時間に加えて、より遅いメモリからデータを取得するペナルティを要する。多数のアクセスにわたって平均すると、次のようになる。 AMAT=th+m⋅tm\text{AMAT} = t_h + m \cdot t_m ここで tht_h はヒット時間、tmt_m はミスペナルティ、mm はミス率である。ミス率は単に 1 からヒット率を引いた値である。 m=1−hm = 1 - h すべてのアクセスが tht_h を支払い、割合 mm のみが tmt_m を支払うため、ヒット率の高いキャッシュは平均を高速なヒット時間に近づける。 計算例 ヒット率 95%、ヒット時間 1 ns、次のレベルに到達するミスペナルティ 100 ns の L1 キャッシュを考える。 AMAT=th+(1−h) tm=1 ns+0.05×100 ns=1 ns+5 ns=6 ns\begin{aligned} \text{AMAT} &= t_h + (1 - h)\, t_m \\ &= 1\ \text{ns} + 0.05 \times 100\ \text{ns} \\ &= 1\ \text{ns} + 5\ \text{ns} = 6\ \text{ns} \end{aligned}AMAT=th+(1−h)tm=1 ns+0.05×100 ns=1 ns+5 ns=6 ns アクセスの 95% が高速であるにもかかわらず、平均アクセス時間はヒット時間の 6 倍である。ミスペナルティがヒット時間の 100 倍であるため、ミスする 5% のアクセスがコストの大部分を占める。 ミス率が見た目以上に重要な理由 キャッシュ調整における効果の大きさは、ヒット時間とミスペナルティの大きな差から生まれる。上の例でヒット率を 95% から 99% へ上げると、AMAT は 6 ns から 2 ns へと下がる。これは 4 ポイントのヒット率の変化からおおよそ 3 分の 1 への改善である。これが、局所性、プリフェッチ、キャッシュサイズのわずかな改善が不釣り合いに大きな効果を生む理由であり、ミスペナルティを直接攻める価値がある理由である。 階層への拡張 現代のプロセッサは、主記憶の前に複数のキャッシュ(L1、L2、L3)を重ねている。式は自然に入れ子になる。ある階層のミスペナルティは、その下の階層の AMAT である。階層を分析するには、最も深い階層を先に計算し、その結果を上へ、1 つ上の階層のミスペナルティとして与える。リクエストの経路全体でアクセスレイテンシがどのように合算されるかの全体像については、レイテンシバジェットの計算 を参照されたい。 これらの数値は安定したアクセスパターンを仮定している。実際のワークロードは変動するため、AMAT は個々のアクセスに対する保証ではなく、代表的な平均として扱う。 よくある質問 (FAQ)平均メモリアクセス時間(AMAT)とは平均メモリアクセス時間は、キャッシュにヒットしたアクセスとミスしたアクセスを平均した、プロセッサがデータを待つ平均時間である。標準的な式は AMAT = ヒット時間 + ミス率 × ミスペナルティである。すべてのアクセスはヒット時間を支払い、ミスする割合のみがさらに、より遅いメモリから取得するペナルティを支払う。AMAT は、キャッシュが実際にどれだけ役立っているかを表す単一の数値である。 ヒット率とミス率の違いは両者は同じものを別の角度から見たものである。ヒット率はキャッシュから供給されるアクセスの割合、ミス率はそうでないアクセスの割合である。両者の和は常に 1 になるため、95% のヒット率は 5% のミス率である。キャッシュの設計者は、見栄えのよい数値としてヒット率を、性能を分析する際にはミス率を報告するのが普通である。ミス率こそが、高くつくミスペナルティに掛かる量だからである。 わずかなミスがこれほど性能を損なうのはなぜかミスペナルティがヒット時間の 1 桁から 2 桁大きいことがしばしばあるからである。ヒットに 1 ns、ミスに 100 ns かかるとすると、わずか 5% のミス率でも 5 ns が加わり、これはヒット時間そのものの 5 倍に当たる。これが、ヒット率を 95% から 99% へ改善すると実効アクセス時間がおおよそ半分になりうる理由であり、また(たとえばより深いキャッシュ階層によって)ミスペナルティを減らすことが、ヒット率を上げることと同じだけ価値を持つ理由である。 これは多階層キャッシュにどう拡張されるか実際のプロセッサは複数のキャッシュ階層(L1、L2、L3)を備え、それらが主記憶へとつながっている。AMAT の式は入れ子になる。すなわち、ある階層のミスペナルティは、それ自体が 1 つ下の階層の AMAT である。したがって AMAT = L1 ヒット時間 + L1 ミス率 × (L2 ヒット時間 + L2 ミス率 × (…)) となる。本計算は単一階層をモデル化する。階層を分析するには、最も深い階層を先に計算し、その AMAT を 1 つ上の階層のミスペナルティとして与える。