CPUを交換したよ

日々徒然
新旧CPUそろい踏み

本日CPUを交換しました。

左は既存であったIntel Xeon E5-1630v3、右は新しく載せ替えたIntel Xeon E5-2690v4です。
ヤフオク!さんにて、なんと5,000円でXeon E5-2690v4を購入しました。新品当時の価格だと2,090USDとのことで、およそ当時の為替レートで19万JPYほどしてた代物が今や5,000JPYなわけですので、いい時代になりましたねー(しみじみ)。

Geminiに比較してもらった結果は以下の通りとなります。

Xeon E5-1630 v3 vs Xeon E5-2690 v4 比較表

Intel Xeon E5-1630 v3 と Xeon E5-2690 v4 の比較

Intel Xeon E5-1600 v3シリーズとE5-2600 v4シリーズは、どちらもLGA2011-v3ソケットに対応するワークステーションおよびサーバー向けプロセッサーですが、世代(アーキテクチャ)とターゲット用途が明確に異なります。

Xeon E5-1630 v3はシングルソケット専用で、高いクロック周波数によるシングルスレッド性能を重視しています。一方、Xeon E5-2690 v4はデュアルソケット構成に対応し、多数のコアを活かしたマルチタスクや並列処理に特化しています。

主要スペック比較表
項目 Intel Xeon E5-1630 v3 Intel Xeon E5-2690 v4
アーキテクチャ Haswell-EP Broadwell-EP
リリース時期 2014年 9月 2016年 第1四半期
プロセスルール 22 nm 14 nm
コア数 / スレッド数 4コア / 8スレッド 14コア / 28スレッド
ベースクロック 3.7 GHz 2.6 GHz
ブーストクロック 3.8 GHz 3.5 GHz
L3 キャッシュ 10 MB 35 MB
対応メモリ DDR4 1333/1600/1866/2133 DDR4 1600/1866/2133/2400
TDP (熱設計電力) 140 W 135 W
マルチプロセッサ対応 非対応 (1Sのみ) 対応 (最大2ソケット)


E5-1630 v3は22nmプロセスのHaswell-EPアーキテクチャ を採用しているのに対し、E5-2690 v4は1世代新しい14nmプロセスのBroadwell-EPアーキテクチャ を採用しています。

プロセスの微細化の恩恵により、E5-2690 v4は14コアを搭載しながらもTDPを135Wに抑えており(E5-1630 v3は4コアで140W)、電力効率(ワットパフォーマンス)が大きく向上しています。また、より高速なDDR4-2400メモリにも対応しています。

これを実装できるようにするために、BIOS更新も行ってまして、ちゃんとBroadwell-EPコアのCPUを動かせるように最新版2.62へのアップグレードも完了しておりますです。無事に起動してくれたようで、私としてはかなりホクホクです。

どっちが高速ですか?と言われると条件による

さて、これどっちが高速なCPUなんですか?と言われると「もちろんXeon E5-2690v4でしょ!」という人もいるかもしれませんが、総合的なところで言うと条件次第です。

Xeon E5-1630 v3は、ワークステーション向けにシングルソケット動作を想定して設計されたCPUです。
いわゆる「第4世代(Haswellアーキテクチャ)」に該当し、前世代のIvy Bridgeから大きな躍進を遂げたモデルでもあります。シリーズの中ではミッドレンジに位置づけられ、4コア/8スレッド構成を採用しています。クロック周波数は標準で3.7GHzと高く設定されており、Turbo Boostを使用することで最大3.8GHzまで引き上げることが可能です。

このCPUが狙っているのは、ずばり「コア単体の性能(シングルスレッド性能)」です。
ワークステーションは開発や実験に用いられることが多く、ユーザーが直接操作するフォアグラウンドの処理が主な用途として想定されています。そのため、あえてコア数を少なめに抑え、その分クロック周波数を高く設定することで、1コアあたりの応答性を最大限に引き出しているのです。

これに対して、Xeon E5-2690 v4はサーバー向けにデュアルソケット構成を想定して作られています。こちらは1世代新しい「第5世代(Broadwellアーキテクチャ)」のCPUです。Haswellよりも製造プロセスが微細化されており、ワットパフォーマンス(電力あたりの性能)の向上が大きなトピックとなりました。
私事ですが、私が病に倒れる前(2017年から2018年にかけて)に直近で扱っていた、非常に思い入れのあるCPU世代でもあります。

このCPUで狙っているのは「総合力」です。1コア単位の性能は決して高くありませんが、多数のコアを横並びに配置することで真価を発揮します。当時爆発的にヒットしていた「仮想化環境」での処理を分散しやすくし、各スレッドの動きが他のコアに干渉しにくいよう設計されています。これにより、大量の仮想マシンを立ち上げても動作が不安定にならず、「安定した稼働」を実現しています。つまり、シングルコアのスピードを追い求めるのではなく、マルチタスクにおける圧倒的な安定性と並列処理能力を追求して作られたCPUなのです。

ぶっちゃけ,今回のCPU選定は、

Haswellで持つコア単体性能を、Broadwellコア、
かつ26xx系列のCPUの単体性能で近似したCPUをできるだけ安価で

というのを求めたところ、行きついたのがここでした。おまけにTDPが5Wほど少ない!ラッキー♪

実際どんな効果があった?

実によかったです。

  • llama.cppをコンパイルする際の効率上昇に寄与した
  • Docker環境を操作するとき、環境が不安定にならずに済んだ
    (メモリ不足になるときついけど)

llama.cppはコンパイルするときにCPUの並列度を操作することが可能です。やっぱり世代は古いので、並列度1で動かすとかなりの無理がありました。なので、これの並列度を例えば20とかで動かすとかなり短い時間で処理が完結できるため、アップデート作業が楽になるというのが一つ挙げられます。

逆に実行パフォーマンスはCUDAを使ってるため大して上がりませんけど・・・(その場合の処理並列度は1プロセスにつき1であるため)。

もう一つのDocker環境は、まさに仮想環境です。できるだけ立ち上がり時にコンテナ間のCPU処理は別々のコアで処理しようとするため、CPUを交換した後はかなり安定して立ち上がれるようになりました。交換前は4つしかコアがなかったこともあり、CPUの取り合いが発生してコンテナの起動で時間差ができてしまうことも多く、ちょっと困っていたんですが・・・

CPUは別に「サーバ用なら速いっしょw」ってわけじゃない

これはPC向けプロセッサについても同じことが言えます。別にXeonにしてるから高速というわけではなしに、どの程度のマルチプロセス、マルチスレッドで動かしてるか、アプリケーションがフォアグラウンドであるか、バックグラウンドであるか、それによっても選定すべきCPUの指標が変わることがあります。

加えてもう一点、「ライセンス」というもののために少コアCPUを選ぶということだってあります
搭載されるプロセッサのソケット数であったり、コア数であったりでライセンスを計算する際に、無駄にコアが多かったりソケットが多かったりする機種はかえってコスト高を招く場合があります。

ハードウェアを構成する際、所謂「男のロマン」を追いかけて選定しようとする人も少なくありませんが、そうしたものに振り回されず、然るべきものにコストをかけるという考えのもとで製品を選定するという考え方はプロだったら大体の人がご存じなはず(少なくとも私の在籍していた会社では常識の範囲内だった)ですので、そうした考え方を生活のフィールドにおいても一考してみるのもまたいいんじゃないか?と思ってます。

この記事が誰かの役に立つことを願っています。
さて、後はメモリを増設ーーーー!と思ってはいたのですが、今後しばらくお金がいりようなイベントが多すぎて追加購入できず・・・なんとかDDR4-RDIMMを探して増設をしたいところですが、しばらくは我慢が必要そうです。(体を治療するにも何においてもとにかく金がかかりますです・・とほほ)

コメント

タイトルとURLをコピーしました