新しいCPUが登場すると情報系サイトでは何種類ものベンチマークソフトを使ってCPUの性能が評価されます。同じ CPU でもベンチマークの種類によっては成績が良かったり悪かったりします。
つまり CPUの性能評価は使用するアプリケーションによって異なるということであり、アプリケーションの特性に一定の認識があればどのCPUが自分に適しているか判断材料の一つになります。
.CPU(1コア単位)の性能は概ね以下の3つの要素で判断する事が出来ます。
.X86本家の Intel CPU の動作クロックが基準となっている指標です。CPU の動作周波数が高いほど処理能力が高い事を意味します。 プロセスルールが同じ CPU の比較では、動作クロックが高い程、消費電力が高く発熱も大きくなります。
基本設計が同じ CPU 同士の比較では、後述するCPU性能律速型アプリケーションのパフォーマンスは動作クロックは性能に比例します。Intel や AMD はクロック周波数を変更する事で、意図的に性能ランク・価格差をつけて販売しています。
遅れて僅かな周波数のアップ版が追加されますが、そのアーキテクチャでどこまでのクロックを製品化できるかという事はCPUメーカーは大方分かっています。小出ししている訳ですが、製造過程で微調整を繰り返しており演算能力が向上する事はありません。しかしステッピングの違いで消費電力が大幅に下がるなど性能が向上する事もあります。
ハードディスク内のデータは全てメモリにコピーされ、CPU は メモリと通信を行う事で命令や情報を処理します。情報が格納されているハードディスクは遅すぎてCPUと直接やりとりを行う事はありませんが、メモリが足りない場合は、ハードディスクを仮想のメモリと見立てるため、操作もままならない程、極端にPCの処理能力が低下します。
パソコンの電源を入れて待たされる時間の大半は、ハードディスク内に記録されている OS というプログラムを メモリ 内に取り込んでいる時間と考える事も出来ます。(処理を実行する時間も含まれる) CPU と メモリ間の性能についても同様の事がいえます。
CPU と メモリ間のやりとりに延滞が発生すれば処理能力も低下しますが、Xeon や Opeteron などの CPU は、一般市場向けの CPU よりも内部キャッシュの容量を増やす事でレイテンシを改善し、一般向けCPUと差別化を図ってきた経緯がありました。
Core i7 世代に該当する Xeon (Nehalem マイクロアーキテクチャ世代(3000 系) の Xeon )では内部キャッシュ容量、QPI速度と差がなくなっており、Core i7 をはじめとする一般向けCPUに対して ECCメモリ非対応とする事で差別化するようになりました。
Core i7 以降の Intel CPU では CPU にメモリコントローラーが内蔵され、CPU とダイレクトに接続する事でレイテンシを改善するアプローチで性能が向上しています。この世代では QPI の転送速度で差別化されています。(3000系と5000系)
大規模データベースやWEBサーバーなど大量のデータに同時にアクセスするタイプのアプリケーションでは高い性能が得られますが、3DCGレンダリングなど CPU そのもの演算能力が求められる処理においては恩恵は少なくなります。
.CPU の基本設計に左右される性能です。例えば 同一クロックの AMD と Intel CPU では設計が異なるため性能に差があります。同じメーカーのCPU であっても、アーキテクチャが大幅に見直されるときに性能特性が変化することもよくあります。(特定の処理で性能が低下することもある)
CPU の拡張命令セットに最適化されたプログラムであれば、効率的に処理できるためパフォーマンスが大幅に向上することもあります。本稿では 3DCG制作をテーマとしていますので、CINEBENCH のベンチマーク結果が大いに参考になります。
Webサーバやデータベースサーバなど同時に多くの要求が発生する場合、一つの処理単位でみればCPUに複雑な処理を求めないため、メモリとの行き来が多くなります。(他I/O 性能も重視される)
3Dレンダリングの場合、CPU とメモリ間のアクセスは CPU が計算している時間の方がウェイトが大きいため メモリ とのアクセス頻度は高くありません。このように考えると、
Xeon は "仕事1"も 得意でっせ、という事であり、ワークステーション用途で "仕事1" が求められることは殆どありません。メモリとの行き来が多い用途では、エラー訂正機能を持つECCメモリなども必要となってくると考える事もできます。
どちらのタイプの仕事も、取り組む人員が多い、つまり、コア数が多いほど短時間で仕事が終わるのは同じです。グラフィックス分野では、聖徳太子のように同時に沢山の話を聞くことが出来なくても、頭の回転の速い人材を揃えた方がメリットが多いということになります。
.CPUに高い処理能力が求められる業務分野では、多くのプログラムがマルチスレッド処理に対応出来るように設計されていました。複数のCPUやコアを使った並列処理でも、処理させる内容によっては得られる恩恵も大きく異なってきます。
大量のデータに頻繁にアクセスするメモリ性能律速型アプリケーションの場合、CPU と メモリ間の大域幅が処理速度に与える影響が大きくなります。
大規模データベースやサーバー分野がこれに該当します。規模が大きいほど CPUとメモリ間のレイテンシがパフォーマンスに大きく影響します。従来から並列処理を前提とすることが多い分野です。
年中稼働しているサーバーではCPU、メモリ間のパフォーマンスと信頼性は極めて重要ですが、CPUの動作クロックは消費電力、発熱の問題からも低い方が適しています。
従来、チップセットを経由でメモリにアクセスしていた経路を、CPUとメモリ間をダイレクトに接続したことで AMD Opteron は低クロックCPUで「メモリ性能律速型アプリケーション」の処理能力を向上させた経緯があります。サーバー分野で AMD Opteronが Intel Xeon のシェアを奪った大きな理由です。消費電力、発熱の面で低クロックCPUはサーバー分野に適しています。
Xeon 3400番台にTDPの小さい低クロック4コアCPU、2コアCPUがラインナップされているのは小規模サーバー用途を想定しているためであり、Core i CPU のように廉価版という位置づけとは意味合いが異なる事に留意する必要があります。
大手PCメーカーが販売する1CPU構成の Xeonワークステーションの場合、低クロック Xeon CPUを搭載した低価格モデルは 3DCG制作用途に適しません。
CPU性能律速型アプリケーションでは、CPU による演算処理を頻繁に行う分野で、前述したCPU、メモリ間のレイテンシよりも CPU の演算性能、主に動作クロックの高い CPU のほうがパフォーマンスに影響が出やすくなります。(他には拡張命令セットなど)
高度で複雑な計算処理を行う 3DCG 制作や、DTV、グラフィックス全般に関しては、このタイプの Xeon プロセッサが適しています。
これに該当する1CPU構成のマルチコアXeon は 3400/3500/3600番台の高クロック モデルになります。ワークステーション向けの高クロック1CPU構成のマルチコアXeon は非常に高価ですが、信頼性の高い Unbuffered +ECC メモリが使えるメリットがあります。
3DCG作品は様々な制作工程を経て完成させますが、中でもパラメータを調整する度に繰り返し行うレンダリングに費やす時間が短いほど作品の生産性は高くなるため、演算能力の優れたCPUが適している事は間違いありません。
"要素1": 高クロックで、 "要素2":あるに超したことはない、"要素3": Intel > AMD という事になります。ここに ECCメモリが使えるかどうか、つまり、信頼性という要素を加えて判断する必要が出てきたという事になります。