macintosh
Vol.28a
counter
25/Sep 1999
applestorelinks
Cache coherency

Top > Macintosh > PowerPC > Cache coherency ▼NAV ▼TEXT ▼form ←Previous Next→

PowerPC 7400

PowerPC 7400

今となっては幻となってしまったPowerMac G4 Cubeに搭載されていたXPC7400RX450。

初期のデュアルプロセッサの発熱は大きなものであった。

(このアーティクルは1999年9月25日の記事を元に再構築しました)

3-state MEI coherency protocol

3-state MEI coherency protocol概念図、Modified ModeではL2 cacheとのやり取りだけで終始するモードで、Invalid Modeはメインメモリとのやり取りをするモード。Exclusive Modeはキャッシュフィルが終了するのを待つモードだ。MEI protocolではInvalid Modeからメモリ書き込み時にすぐにModified Modeへ戻ってくるCopy backで全体の処理速度を向上させている

3-state MEI coherency protocol
cache to cache coherency

G4 Multiprocessingモデルでの、5-state MERSI coherency protocolによって実現するcache to cache coherencyの概念図

cache to cache coherency

Level 2 cacheとメインメモリーとの間での相同性(coherency)を保つためにG3で採用されているのが3-state MEI coherency protocolです。G4で新たに使用できるようになった、5-state MERSI coherency protocolと比較して見ましょう。

3-state MEI coherency protocolは大変簡略化した3-state MEI coherency protocolの概念図です。*1 copy-backと呼ばれるL2 cacheのアクセス方法を選択したとき、効率よくメモリにアクセスするために、G3のキャッシュコントローラーが持つ一種のメモリアクセスモードです。一つ一つ説明しましょう。

Modified Mode

このモードは全てのメモリアクセスがL2キャッシュにヒットし、メインメモリにはアクセスする必要がないモードです。書き込みはL2 cache内部のみで、メインメモリには古い情報しか

ありません。そのため「Modified」です。

Invalid Mode

一旦キャッシュミスが生じた場合二手に分かれます。60xバス、すなわちメモリコントローラーとCPUの間のバスが使用可能であってかつ、キャッシュが書き込み可能な状態であるときはInvalidモードに移行し、いずれかがbusyの場合はExclusiveモードへ移ります。Invalid Modeではメインメモリにアクセスし、キャッシュフィルを行います。

キャッシュは32byte単位で管理され、1wordの書き込みでも、その前後のキャッシュの情報を完全なものにするためキャッシュフィルが必要です。CPUはメモリに対して通常数倍のスピードで動いているためこのキャッシュフィルの時間が相対的に長く、次のキャッシュフィルまで待つことが多く存在するという訳です。

しかし、漠然とこの時間を待っていたのでは処理速度が低下します。メモリ書き込みに関しては、該当のL2キャッシュに書き込みした後、キャッシュフィルは後回しにして直接Modifiedモードに戻ります。

Exclusive Mode

バスが混雑している場合や、キャッシュフィル実行中で新たなキャッシュフィルが出来ない場合にModeifiedモードから移行し、用意が出来次第、Invalidモードへ移行し、メインメモリへアクセスします。

またInvalidモードからもメインメモリからの読み込み時、キャッシュフィルが完了するまでは仕方なくExclusiveモードへ移行するわけです。キャッシュフィルが完了し、読み込みが完了すれば、Modefiedモードへ戻ります。

これに比べ、G4では5-state MERSI coherency protocolが採用され、

MPXバスで利用できます。*2 G3のMEIに、Reserved ModeとShared Modeが加えられた訳です。Multiprocessingが可能であったPowerPC 604では4-state MESI coherencyが採用*1されていたに比べてもより複雑で、効率よく動かすことが可能です。このMERSI coherencyでL1,L2 cacheのG4同士での相同性が保たれると言うわけです。

確かに効率よくキャッシュメモリ間の相同性を実現するためには必要なステップであり、G3に実装されるMEI coherencyは無理です。しかし、シングルプロセッサでは必要のないステップであることも確かです。

結論はシングルプロセッサでG4を使用するなら、MPX busやそれがサポートするMERSI coherency protocolは必要ないということです。

ただそMPX busの能力はMERSI coherency protocolのサポートだけではありません。比較的速度の遅いI/O要求を中断し、メモリ読み出しを優先させるなどの例外処理の補強や、タイミングの最適化により、それまでの60xバスと比較すると情報伝達の効率が上昇しています。

*1MPC750 RISC Microprocessor Users Manual (PDF)

*2PPC-P-Public_Ver-990517 (PDF)

topsearchinformationbbsmacintoshmedicalnext & macos xfaqfaq for G4site maplink

アンケートフォーム

電子メールアドレス
お名前(Option)

使用OS

使用機種
ご質問、ご提案、ご意見などありましたらご記入下さい。

ページに対する感想など、誤字脱字などお聞かせ願えれば幸いです。
このHPのチェックは
今日初めて
月に1〜2度
週に数回
内容について
難しい
適度である
簡単だ
デザインは
良好
普通
変更が必要
話題について
MacBook特化が良い
特にこだわらない
できればアンケートフォームに答えていただけると幸いです。

medicalmac

medical macintosh (c) 1998,1999,2000,2001,2002,2003,2004,2005, 2006, 2007, 2008
Written/Edited by Y.Yamamoto M.D.
Privacy and Security Policy

自由にリンクして下さい。

アップルおよびアップルのロゴは、アメリカ合衆国およびその他の国々におけるApple Computer,Inc.の登録商標です。

POWERBOOK ARMYおよびmedical macintoshは、独立したユーザグループで、アップルコンピュータ株式会社が権限を与えた団体、支援する団体、またはその他に承認する団体ではありません。