RightMark Memory Analyzer 3.8(グラフ14~23)

cpu.rightmark.org
http://cpu.rightmark.org/

ではRMMAを使い、もう少し細かく見てみたい。RMMAの場合、そもそもTurbo Coreを実施すると正確なスコアが取れないので、X6 1090T及びX6 1090T(2.4GHz)のどちらもTurbo Coreを無効としている。また比較用にCore i7-860のスコアも示したが、こちらもTurbo Boostを無効としてテストを実施している。

まずグラフ14~19はD-Cache/RAM Bandwidth, SSE2での結果である。グラフ14~16はテスト全体をまとめて表示したもので、グラフ17~19は1MB~15MBの範囲を拡大表示したものだ。さて結果を見ると、意外にも2.4GHz駆動の効用が殆ど見て取れない。強いて言えば、6MBを超えた先、つまりMemory Accessの部分では定格の2GHz駆動のケースよりも若干Throughputが上がっているが、Readの場合2GHz駆動が2.3Bytes/cycle、2.4GHz駆動が2.4Bytes/cycleといったところで、それほど大きな違いとは言いにくいし、Write/Copyに関しては殆ど差が無いといってよい。

スループットそのものは、L3にしてもキャッシュにしても変わらないから(厳密に言えばL3そのものの動作周波数は上がっているのかもしれないが、CPUコアとL3の間の速度が一定になっていると思われる)、これはある意味正しい振る舞いであるが、しかしそうだとするとSandraやRMMTの結果が説明できない。

そこで次にD-Cache/RAM Latencyの結果を見てみた。グラフ20~22がそれである。まずForward Read(グラフ20)とBackward Read(グラフ21)の結果を見ると、メモリアクセスで2.4GHz駆動はバタつきが減ってはいるが、平均値としては2GHz駆動も2.4GHz駆動も大きく変わらないし、それ以前のL1~L3キャッシュの範囲はほぼ同一と言ってよい。ところが、Random Read(グラフ22)やPseudo-Random Read(グラフ23)では明確な差が現れた。Pseudo-Randomで平均5Cycle、Randomでは最大15Cycle程度、Latencyが短縮されていることが判る。

してみると、NBを2.4GHz駆動にすることで、Random Access時のLatencyが短縮される、という事が性能が引きあがっている理由のようだ。こう考えると、SandraのMulti-Core EfficiencyやCache&Memory Bandwidth/Latencyのスコアが伸びる理由も理解できる。これらのテストは何れもMulti-Thread化されており、メモリのみならずL3キャッシュも同時にアクセスを行うから、個々のThreadはLinear Accessであっても、全体としてはRandom Accessになるわけで、この処理が高速化されることで、結果としてL3 Access時のLatency短縮と、これに伴うThroughput増大が得られるという話だろう。逆に言えば、特にL3に関してはSingle Threadでアクセスする限り、殆どその効果が見えないというのもうなづけるものがある。

通常だと、このあとDecoderやTLBなどのアクセスパターンについても比較を行うのだが、今回は省略する。というのは、一応全項目データは取ってみたのだが、有意な差があったのはこのメモリアクセス周りのみで、その他の結果はPhenom II X4と全く変わらなかったからだ。つまりNBの2.4GHz駆動に影響されるのはあくまでメモリやキャッシュのRandom Access時のLatencyのみであり、またコアそのものはPhenom II X6とPhenom II X4で、少なくともRMMAでは有意な差は出ない程度に同一という事は確認できた。