実効アクセス時間の公式について疑問

このQ&Aのポイント
  • 基本情報技術者試験の問題を解いていた中で、実効アクセス時間を求める公式に疑問が生じました。
  • 公式は(キャッシュメモリのアクセス時間×ヒット率)+主記憶のアクセス時間×(1-ヒット率)で表されます。
  • 疑問点は、キャッシュメモリにヒットしなかった場合のアクセス時間の計算方法に関するものです。
回答を見る
  • ベストアンサー

実効アクセス時間の公式について疑問

基本情報技術者試験の問題を解いていたのですが、 > 実効アクセス時間を求めるための公式は、 >   (キャッシュメモリのアクセス時間×ヒット率)+主記憶のアクセス時間×(1-ヒット率) > で表すことができます。 という解説を見て疑問に思ったことがありましたので、質問させて下さい。 ここで実効アクセス時間を求める時、キャッシュメモリにヒットしなかった場合は主記憶にアクセスする物だと解釈しています。 上の公式でいう「主記憶のアクセス時間×(1-ヒット率)」の項がこのケースにおける時間の計算だと思うのですが、一旦キャッシュメモリにあるかどうか確認した上で主記憶にアクセスするのであれば「(キャッシュメモリのアクセス時間 + 主記憶のアクセス時間) * (1 - ヒット率)」になるのではないでしょうか? それとも、キャッシュメモリにあるかどうかは一般にアクセスする前にリスト等で確認できる仕様になっているという事でしょうか? どなたか教えてくださると助かります。 宜しくお願いします。

  • ppmcn
  • お礼率95% (43/45)

質問者が選んだベストアンサー

  • ベストアンサー
  • ybnormal
  • ベストアンサー率50% (220/437)
回答No.2

考え方はそれで正しいと思います。 ただ、ここではそういう厳密なモデルを想定していないだけでしょう。 ここでの主記憶のアクセス時間というのは、メモリそのもののアクセス時間というよりも、命令がキャッシュへのアクセスを始めて、キャッシュにミスして、主記憶からデータがかえってくるまでの全時間を指していると考えるべきです。 細かいことをいうと、キャッシュにミスした後、すぐに主記憶に要求がでるとは限りませんし、アドレス変換まで必要であれば主記憶に何度もアクセスしてからようやくデータが返ってくるということになります。したがって、「主記憶のアクセス時間」が本当にメモリそのもののアクセス時間を指しているのなら、「(キャッシュメモリのアクセス時間 + 主記憶のアクセス時間) * (1 - ヒット率)」も正しくないことになりますし、実際のマイクロアーキテクチャがわからない限り、厳密には平均アクセス時間は計算できないことになります。 この問題では、そういう細かい話ではなく、キャッシュヒット、ミスの概念的なものを問うていると考えるべきです。

ppmcn
質問者

お礼

ふと浮かんだこの疑問のみに焦点を当てすぎて、仰るようなケースが見えてませんでした。 「主記憶へのアクセス時間」の言葉を広く解釈すべきでした。 ありがとうございます、理解できました。

その他の回答 (1)

  • celtis
  • ベストアンサー率70% (2265/3203)
回答No.1

>一旦キャッシュメモリにあるかどうか確認した上で主記憶にアクセスするのであれば とありますが、そのうち 「一旦キャッシュメモリにあるかどうか確認した上で」が、キャッシュメモリのアクセス時間×ヒット率 「主記憶にアクセスするのであれば」が、主記憶のアクセス時間×(1-ヒット率) にあたります。 http://www.it-license.com/memory/cache_memory_access.html これは確率の問題で、キャッシュメモリにあった場合に読み込む時間と キャッシュメモリに無かった場合(主記憶にあった場合)に読み込む時間を それぞれの場合に分けて計算して、単純に合計したものを実効アクセス時間としています。 もしあなたが書かれているように 「(キャッシュメモリのアクセス時間 + 主記憶のアクセス時間) * (1 - ヒット率)」 という考え方をしたとすると、 キャッシュメモリにデータが見つかった場合はどのような計算式になるでしょうか?

ppmcn
質問者

お礼

私が「(キャッシュメモリのアクセス時間 + 主記憶のアクセス時間) * (1 - ヒット率)」 と挙げた箇所は元の公式の第二項に当たる箇所についてでして、ヒットしなかった時に「主記憶のアクセス時間」だけを考えたならばにキャッシュメモリを探索したコストはどうなるんだろう、という疑問でした。 キャッシュメモリにデータが見つかった場合は(キャッシュメモリのアクセス時間×ヒット率)で納得しております。 質問がわかりづらかったようで申し訳ないです、回答ありがとうございました。

関連するQ&A

  • キャッシュメモリのヒット率 アクセス時間の計算

    本当は先生に聞くべきでしたが、都合により聞けなかったのでどうか教えて下さい。 以下のデータがあったとします。 キャッシュメモリのアクセス時間が 10ns キャッシュメモリのヒット率が   60% 主記憶のアクセス時間が      70ns 以上の状態から「実行メモリ」の「アクセス時間」はどう求めればよいですか?

  • キャッシュメモリの質問です。

    キャッシュメモリのアクセス時間が主記憶装置のアクセス時間の1/20で、ヒット率が0.86のとき、実効メモリアクセス時間は、主記憶装置のアクセス時間(キャッシュメモリを使用しないとき)の約何倍になるか?? まず自分がわかっていることは主記憶の値をhとして、 h * (1ー0.86) + 20/1 < h    で式をたてるのでしょうか?? バカな質問ですいません。計算が苦手でわかりません。 答えは、1.8倍になるのですが解き方がわかりません 回答おねがいします。

  • キャッシュメモリのアクセス時間の計算。

    容量512Mバイト、アクセス時間50ナノ秒の主記憶装置に容量64Kバイトのキャッシュメモリを付加したところ、アクセス時間が9.5ナノ秒となった。キャッシュメモリのフット率は0.9とするときのキャッシュメモリのアクセス時間は? ↑ キャッシュメモリのアクセス時間をXとして、ヒット率が0.9ということは、10回アクセスしたら、9回が「x」ナノ、1回が50ナノということから、 9×X+50=9.5no10倍ですよね、 ここからどうやって答えだしたらいいですか? 計算方法を教えてください。

  • 質問:平成14年春 問24が解けなくて困っています。

    こんにちは。 今、基本情報処理の受験勉強をしているのですが、「平成14年春 問24」の問題の解説を読んでも理解できなくて困っています。 どなたかもっとわかりやすく解説して頂けないでしょうか。 【問題】 キャッシュメモリのアクセス時間が,主記憶のアクセス時間の1/10であり,キャッシュメモリのヒット率が80%であるとき,主記憶の実効アクセス時間は,キャッシュメモリを使用しない場合の何%か。 【解答】 28% どっから、28%が出てきたのか理解できないです。 お願いします

  • 記憶階層における計算

    記憶階層システムに関する問題 1次キャッシュメモリー、2次キャッシュメモリー、半導体主記憶、磁気ディスク2次記憶の4レベルからなる記憶階層システムがある。 アクセス時間は順に1ns,10ns,70ns,1msで1次キャッシュヒット率は85%、2次キャッシュヒット率は90%、主記憶のヒット率は95%とする。この記憶階層システムの平均アクセス時間を求めよ。 =5.00935×10^(-5)s 合っていますでしょうか? ご確認お願い致します。

  • キャッシュメモリのヒット率

    アクセス時間10ナノ秒のキャッシュメモリとアクセス時間40ナノ秒の主記憶を使用した処理装置の実行メモリアクセス時間を20ナノ秒以下にしたい。最低限必要なキャッシュメモリのヒット率を求めたい。 「問題」 最低限必要なキャッシュメモリのヒット率を小数点以下第3位を四捨五入して求めよ。 どなたかお願いします。

  • キャッシュメモリのアクセス時間・・・

    コンピューターシステムの問題について教えてください。アクセス時間の求め方については理解しているつもりなのですが、教えてください。 1 容量512Mバイト、アクセス時間50ナノ秒の主記憶装置に容量64Kバイトのキャッシュメモリを付加したところ、アクセス時間が9.5ナノ秒となった。キャッシュメモリのフット率は0.9とするときのキャッシュメモリのアクセス時間はどのようになるのでしょうか? 2 磁気ディスク装置のサーチ時間は5ミリ秒。この装置の回転速度(1分間あたりの回転数)はどのように計算すればいいですか?   3 7ビットの文字コードの最上位にバリティビットを付加し、偶数のバリティで誤りの検出を行う時、16進数で6Bと表される文字コードにバリティビットを付加した数値を16進数で表すにはどう考えればいいですか? 以上の問題に躓いてます…よろしくお願いします。 

  • プロセッサの実効性能だけを2倍に向上させても

    プロセッサの実効性能だけを2倍に向上させても、コンピュータ全体の処理性能は2倍に向上しないことをキャッシュメモリを含めたメモリ階層の仕組みと関係つけて説明せよ。 という問題でまた新たに解答を考え直してみました。 メモリデバイスには、速度や記憶容量の違いなど様々な種類がありますが、高速性と大容量は両立しない。ゆえにプロセッサの実行性能、つまり高速性と大容量を二倍にしてもそれは両立できず結果的にコンピュータの処理性能は二倍にはならない。このため、主記憶には高速・小容量なメモリと低速・大容量なメモリを組合わせて、メモリアーキテクチャを設計する。 この構成方式を記憶階層と呼ぶ。 記憶階層では、参照の局所性と呼ばれる性質をうまく利用している。 メモリ内で、あるアドレスがアクセスされたとき、次にアクセスされるのは、その近辺のアドレスである可能性が高く、それを参照の局所性と呼ぶ。 ご確認お願い致します。

  • キャシュメモリに関する問題について、答えが分かりません

     すみません、カテ違いかもしれませんが宜しくお願いします。    実はシスアド(18春)の問題で「キャシュメモリに関する正しい表記を選択する」問題ですが、答えが分かりません宜しくお願いします。 ア.書き込み命令が実行されたときに、キャッシュメモリと主記憶の両方を書き換える方式と、キャッシュメモリだけを書き換えておき、  主記憶の書き換えはブロックの入れ替え時に行う方式がある。 イ.キャッシュメモリは、実記憶と仮想記憶のメモリ容量の差を埋めるために採用される。 ウ.主記憶へのアクセスでキャッシュメモリにヒットしないと割り込みが生じ、プログラムによって主記憶からキャッシュメモリへデーターが転送される。 エ.半導体メモリのアクセス速度の向上が著しいので、キャッシュメモリの必要性は減っている。 ・「ア」の「書き込み命令が実行されたとき」とは「何が何に」書き込み命令が実行されたときなのでしょうか。 「ブロック」とはどのようなものでしょうか。 ・「イ」の「実記憶」とは何を指しているのでしょうか。  答えは「イ」か「ウ」のような気がするのですが、具体的にどこがどのように間違っているのか理解できません。 ・シスアド、基本情報の過去問を解説しているサイトはどこかにあるのでしょうか。  

  • 外部記憶に関する問題

    2レベルのメモリ階層を持った仮想記憶システムがある。ここで主記憶をM1,二次記憶(ディスク)をM2と呼ぶ。この仮想記憶システムに関する以下の問いに答えよ。 (a)M1への平均アクセス時間をt1=10^-8s, M2への平均アクセス時間をt2=10^-3sとする。この時、この仮想記憶メモリ階層に対する平均アクセス時間を、t2の65%以内にするために必要な、M1のヒット率Hの最小値を求めよ。 H=0.154×10^-2 となりました。 あってますでしょうか?