ベンチマークPart 1:外部グラフィックス

Sandra 2012 Engineer Edition(グラフ1~12)

SiSoftware
http://www.sisoftware.co.uk/

さて、最初はSandraから。まずグラフ1がDhrystone、グラフ2がWhetstoneの結果である。基本的には最高速なのが6コアのCore i7-3960Xなのは当然として、なぜかCore i7-3770Kのスコアが振るわない。スペック的にはCore i7-2700KとCore i7-3770Kは同一(定格3.5GGHz/Turbo最大で3.9GHz)だから、過去のケースを見ると同等のスコアになってもよさそうなものであるが、実際のスコアを見ると若干のビハインドを負っている結果となった。これはNative Codeだけでなく.NET環境やJava環境でも同じ結果となっている。もっとも差は環境によって多少違うこともあり、一概に「これが理由」とは言いにくい。

原因の追究は後にして、ではProcessor Multi-mediaでは? ということでグラフ3を見ると、こちらもやはり似た状況になっている。ただ仔細に見ると、こちらではJavaだとむしろCore i7-3770Kの方が(わずかながら)高速といったケースが目立っており、無条件にCore i7-3770Kが遅いのではなく、なにかしら条件というか環境に依存する部分がありそうな雰囲気である。

その一方、Cryptography(グラフ4)ではCore i7-3770Kが逆転した。最高速がCore i7-3960Xなのは当然だが、AES256-ECBのEncryption/DecryptionではわずかながらCore i7-3770Kが高速であり、だいぶ不思議な感じだ。

この不思議な結果は、Multi-Core Efficiencyでも再現した(グラフ5、6)グラフ5がOverallで、縦棒が帯域、折れ線がLatencyとなっているが、Core i7-3770KはCore i7-2700Kと比較すると帯域がやや下がり、Latencyが若干増えているのがわかる。この傾向は、Detail(グラフ6)を見るとよりはっきりする。4KB以下の少量のデータ移動時はCore i7-3770Kが高速だが、これを超えるとCore i7-2700Kが上回る結果になっており、理由はともかく、グラフ5の結果はこのグラフ6の数値を見る限り妥当といわざるを得ない。

グラフ7~11はメモリアクセス関連である。まずグラフ7はStreamの結果と、グラフ8のテストにおける64MB/256MB/1GBのスコアの平均値をまとめたものである。少なくとも、メモリ帯域を見る限り大きな違いはない、というのがグラフ7における見解となる。まぁここでのボトルネックはCPUそのものというよりもMemoryの帯域そのものだから、同じメモリ構成で使う限りこれは当然と言える。

ではDetailは? ということでグラフ8が2KB~1GBにおけるRead Accessの帯域をまとめた結果である。こちらでも若干の性能差が明確に出ており、この傾向はここまでと全く同一となっている。

次はLatencyである。Sandra 2012からは従来のRandom/Sequentialに代わり、In-Page Random/Full Random/Sequentialの3つのテストが増えた。要するにページ境界をまたぐか否かでの振る舞いの違いまで確認するようになった、ということだ。さて結果であるが、グラフ9がIn-Page Random、グラフ10がFull Random、グラフ11がSequentialである。一見して判るのは、L1に関しては若干多いような気はするが、まぁ概ね3製品とも同一Latencyの範囲内であるが、L2及びLLCに関しては明確にCore i7-2700Kが一番高速であること。Core i7-3770Kは、Core i7-3960Xほどには多くないが、Core i7-2700Kよりは確実に増えている事が読み取れる。ただLLCを超えた、つまり16MB以上に関してはCore i7-3770Kがかなり優秀なスコアとなっている。8MBに関してはCore i7-3960Xが優秀なスコアだが、これはLLCが15MB(2.5MB×6)も搭載している部分に助けられた結果であって、これを超えると急速にLatencyが増えているから、これを勘案するとCore i7-3770KではMemory Controllerの性能改善がうまくいっていることが推察される。

もっともこのLatencyは、Turboの効果もあることを勘案する必要がある。この辺りは、後でもう一度確認してみたい。

最後にVideo Memory Bandwidthの結果(グラフ12)を示す。ここで見たいのは、PCIeバス経由でのVideo Memoryアクセスの帯域であって、いまさらRadeon HD 7970のカード自体のメモリアクセス性能を比較しても仕方が無いので、ここではDirectXを利用してのSystem to Device(CPU→GPU)とDevice to System(GPU→CPU)の転送性能のみを示す。結果から言うと、CPU→GPUに関してはCore i7-3770Kが文字通り最高速であった。Gen2の世代の場合、理論値は8GB/secで実質5GB/secといったところだったのが、Gen3では理論値16GB/secに対して実質10GB/sec強となっており、見事に倍増している。Core i7-3960Xは同じGen3ながら9GB/sec程度に留まっていることを勘案すると、非常に優秀な成績だと判断してよいと思う。