平成25年度 春期 午前Ⅱ 問4
メモリ
スヌープキャッシュの説明
マルチコアプロセッサで用いられるスヌープキャッシュの説明として,適切なものはどれか。
- ア各コアがそれぞれ独立のメモリ空間とキャッシュをもつことによって,コヒーレンシを保つ。
- イ各コアが一つのキャッシュを共有することによって,コヒーレンシを保つ。
- ウ共有バスを介して,各コアのキャッシュが他コアのキャッシュの更新状態を管理し,コヒーレンシを保つ。
- エ全てのキャッシュブロックを一元管理するディレクトリを用いて,キャッシュのコヒーレンシを保つ。
答えと解説を見る
✓ これが正解ウ共有バスを介して,各コアのキャッシュが他コアのキャッシュの更新状態を管理し,コヒーレンシを保つ。
解説
各コアのキャッシュが共有バスを見張り、他コアの更新を反映します。
マルチコアプロセッサでは、コアごとにキャッシュを持つため、同じデータの写しが複数のキャッシュに入ります。あるコアが書き換えたとき、他のコアの写しが古いままだと内容が食い違うので、それを防いで一貫性(コヒーレンシ)を保つ仕組みが必要です。スヌープキャッシュは、各コアのキャッシュが共有バスに流れるアクセスを監視(スヌープ)し、他のコアが更新したことを知ると、自分の写しを無効にしたり更新したりする方式です。各キャッシュがバスを見張って自分で状態を管理するのか、どこか一か所でまとめて管理するのかを軸にすると見分けられます。
ほかの選択肢はなぜ違うのか
- ア各コアがそれぞれ独立のメモリ空間とキャッ…:各コアが独立したメモリ空間とキャッシュを持つのなら、同じデータの写しを複数のコアで共有する場面がそもそもありません。共有データの食い違いを、バスの監視で防ぐというスヌープの仕組みの説明になっていません。
- イ各コアが一つのキャッシュを共有することに…:一つのキャッシュを全コアで共有すれば写しは一つで済みますが、それは共有する構成そのものの話です。コアごとに持つキャッシュが互いの更新を見張るスヌープの仕組みとは別のやり方です。
- エ全てのキャッシュブロックを一元管理するデ…:全てのキャッシュブロックを一か所のディレクトリで管理するのは、ディレクトリ方式と呼ばれる別のやり方です。表を引いて状態を確かめるので、各キャッシュが共有バスを監視するスヌープとは対になる方式です。
この問題の用語
- キャッシュ一度取り寄せた内容を手元に置いて、次から早く使えるようにする仕組み。CPUとメモリの間や、ブラウザ、DNSなど、さまざまな場所で使われます。
出典:平成25年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問4
同じ用語が出る問題
- 令和7年度 秋期 午前Ⅱ 問16:DNSSECに関する問題(キャッシュ)
- 令和7年度 秋期 午前Ⅱ 問9:DRAMの特徴(キャッシュ)
- 令和6年度 秋期 午前Ⅱ 問3:キャッシュメモリに関する問題(キャッシュ)
- 令和4年度 秋期 午前Ⅱ 問1:スヌープキャッシュの説明(キャッシュ)
- 令和3年度 秋期 午前Ⅱ 問3:メモリインタリーブの説明(キャッシュ)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)