POWER7は、IBMのハイエンドサーバ用プロセサの常としてRASは充実している。メモリ系は8bit幅のエラー訂正が可能なECCコードを使用し、DRAMチップ1個が完全に故障しても訂正が可能である。また、スペアのx8 DRAMチップを搭載し、2個のDRAMが故障してもシステムは止まらない。そして、ハードウェアが定期的にメモリ全体を読み出し、エラーが見つかると訂正してメモリに書き戻して宇宙線などによるソフトエラーが累積しないようにするスクラブ機能をもっている。
また、DIMMとの接続パスは1ビット分余裕を持たせており、故障すると切り替えて別の線を使う。さらに、仮想化で故障したDIMMを避けてシステムを動かすことができるようになっている。
これだけやっておくと、メモリの故障でシステムが止まることはほとんど無い。DRAMが1個くらい故障しても直ぐに修理する必要はなく、次の定期保守のときに交換してやればよいので、メンテナンスの手間が大きく削減できる。
そして、キャッシュRAMなどはECCで保護されており、メモリ、プロセサ間、I/OなどのリンクもECCで保護されている。そしてプロセサのロジックに対してもエラー検出とリカバリを行っているが、この部分はメインフレームプロセサやPOWER6では、Recovery Unitという専用ユニットにアーキテクチャ状態を毎サイクル記憶し、エラーが検出されると、エラー発生前の正しい状態までプロセサの状態を巻き戻していた。しかし、このPOWER7ではOut-of-Order実行マシンであることから、投機実行の予測外れからの回復機構を利用してリカバリを行う方式を採用している。
また、宇宙線起因のエラー発生頻度自体を減らすため、Stacked Latchと呼ぶラッチを使っていると書かれている。詳細は不明であるが、IntelのTukwilaに使われているDICEのようなソフトエラー耐性の高いLatchであると考えられる。
そして、これだけ頑張っても、クロックが止まってしまっては何にもならないので、2系統のクロック発信器を備え、一方が止まった場合には、他方が肩代わりしてシステムが止まらないようになっている。
少し話しがそれるが、電源供給が止まればこれらの高信頼機構もアウトであり、高信頼を要求されるハイエンドシステムでは、一般的に電源も強化されている。今回の発表はチップが中心であるので言及されなかったが、チップに電源を供給するVRMも2重化やN+1冗長を行い、1個のVRMが故障しても電源供給は止まらないという構成になっている。また、VRMに電源を供給する電源ユニットもN+1冗長、さらにAC電源は無停電電源とディーゼル発電機などでバックアップするとか、2つの電力幹線から受電して供給が止まらないようにするなどの対策が採られる。
8コアx4スレッドでチップあたりの性能は大幅に向上したので、キャッシュやメモリ系もそれに見合った性能向上が必要となる。このため、POWER7では32MBのeDRAMキャッシュを内蔵した。POWER6までの別チップの3次キャッシュに比べると相当にアクセスタイムが改善されているはずである。また、各コアに4MB分の3次キャッシュがローカルに接続されている。この自コアにローカルな3次キャッシュがヒットすると、その他の3次キャッシュヒットに比べてアクセス時間は1/5になるという。IntelのNehalem EXと同様に、ローカル部分をまずアクセスし、ミスした場合には他のコアの3次キャッシュにもアクセスを送るという方式を取っていると考えられる。
また、ローカルな3次キャッシュのヒット率を上げるため、他のコアにローカルな3次キャッシュに存在するデータを自動的にコピーして持ってくる。つまり、まったく同じデータが1つの3次キャッシュの中に複数存在する場合があるという構成である。
そして3次キャッシュのアクセスタイムが大幅に改善されたので、2次キャッシュは256KBと縮小されている。この2次キャッシュのアクセスタイムは3次キャッシュのローカル領域のアクセスタイムの1/3という。
各コアはそれぞれ32KBの1次命令キャッシュと1次データキャッシュを持っている。1次データキャッシュはストアスルーであり、格納時には同じデータが2次キャッシュにも書き込まれる。2次キャッシュは通常のストアイン(Write Backとも言う)であるが、3次キャッシュのローカル領域はPartial Victimと書かれている。また、3次キャッシュ全体は複雑な動きをするのでポリシーはAdaptiveと書かれている。この複雑なキャッシュシステムを制御するため、通常ではMOESIなどの4~5状態のプロトコルが用いられるが、POWER7では、13状態のプロトコルを使っているという。
そして、IBM社内では、すでにPOWER7を搭載したシステムが300システム動いており、開発は順調に進んでいるとのことである。