ゲームと機械学習(ディープラーニング)用に自作パソコンを組み立てる

2019年1月7日

きっかけ

もともとグラフィック処理の重いPCゲーム(The Witcher 3やWatch Dogsなど)で遊んでいましたが、最近やる頻度が減ってきています。

持て余したスペックの再利用も兼ねて、ゲーム、機械学習・深層学習に使えるように自作パソコンを組み立て直しました。

おすすめのパーツや選定理由も記しておきます。

パーツの購入先

ヤフオク、Amazon、ヨドバシをメインにパーツを調達します。新品はAmazon、ヨドバシで購入。

ヤフオクは売上金を次のパーツの購入費用にあてられるのでおススメ。

・古くなって更新したパーツ
・マザーボードの交換で使わなくなったメモリやCPU

などを売るのに使っています。
予算が少なくても、性能の良い機器に乗り換えられます。

中古品はときどき買いますが、不良品の少ないCPUやメモリ、ケースくらいです。
ピンの折れで一発アウトなマザーボード、使い方で寿命が大きく変わるSSD/HDDなどの中古はちょっと怖いので控えています。

組み立てたパーツたち

CPU:コア数重視


Intel CPU Core i5-8400 2.8GHz 6コア/6スレッドLGA1151 BX80684I58400【BOX】

機械学習用途においては、論理コア数(スレッド数)よりも物理コア数の多さが重要らしいです。
作業の大部分をしめる前処理などでCPUの出番は多いです。またscikit-learnはGPUによる計算処理のサポートがないので、その処理速度はCPUに依存します。

第8世代のi5シリーズから、物理コア数がi7(6コア/12スレッド)と同じ6コアになっています。
ゲーム用途では、GPUがハイエンドになるほどCPUが律速となってきますが、GTX1080以下であればi5でも問題ないかと。

マザーボード:ASUSのゲーミング用MB


ASUS ROG STRIX H370-I GAMING 【MiniITX】

オーバークロックは考えていなかったので、第8世代CPU対応の H370チップセット搭載MBで良さそうだったので決めました。
決め手は以下の4つ。結局寝るときまぶしかったのでLEDは切ってしまっています…。

・マザーボードに定評のあるASUS製
・ゲーミング向け
・M2.SSD用のヒートシンクがある
・ボードがLEDで光る

メモリ:画像認識をしたいなら32GB以上ほしい


PATRIOT デスクトップ用メモリ Viper Elite  DDR4 2666MHz
16GBx2 ブラック・グレーヒートシンク PVE432G266C6KGY

アンサンブル法(ランダムフォレスト、XGBoost、LightGBM )ではデータセットをいくつかのサブサンプルに分けて学習するため、物理メモリの量が問題になることはあまりありません。
しかし決定木やニューラルネットワークなどで、すべての学習データを一旦メモリ上に展開する必要がある場合は、メモリの容量が重要になってきます。

1つのデータが大きい画像を取り扱うなら、ディープニューラルネットワーク(DNN)等で画像認識をするならば、32BG以上(できれば64GB)ほしいところです。

Mini-Itxではメモリが2つまでしか載せられないため、ここは32GBで妥協しました(さすがに32GB x2はコスパが悪すぎる…)。
ケースが気に入っていたのでしょうがないですが、ATXだったら16GB ×4(64GB)にしていたと思います。

GPU:予算があるならTiシリーズで

EVGA GeForce GTX 1080 FTW HYBRID GAMING, 8GB GDDR5X

ゲームをするうえでもディープラーニングをするうえでも必須のパーツです。

以前から使っていたものを転用しました。今はGTX 2080も出てきているので、そちらのほうが良いかもしれません。
簡易水冷付きになっているので、ゲーム中も静かでファン音に悩まされることなくプレイできます。高負荷なゲームでも60℃以上行くことはほぼありません。

GPUメモリはメインメモリと同様に画像認識のような分野で威力を発揮するため、予算が許せばTi系統のがベター

  • 1080、2080:8GB
  • 1080Ti, 2080Ti:11GB

ストレージ:SDD2つとHDD


Intel SSD 760p M.2 PCIEx4 256GB SSDPEKKW256G8XT

SAMSUNG 860EVO SSD 250GB 2.5インチ MZ76E250BIT

HDD 内蔵ハードディスク 2.5インチ 1TB WD Blue メーカー保証2年 WD10SPZX

ストレージは用途ごとに3つに分けています。ゲームはSSDにインストールするとロード時間が短縮され快適にプレイできます。

  • M2.SSD:OS、Office、ブラウザ等のアプリのインストール用
  • 2.5インチHDD:動画、写真、その他データなど

電源:


【Seasonic】Gシリーズ 550W ATX電源[80+GOLD] SSR-550RMS

電源容量の半分で一番変換効率が良いそうで、よく電源容量は(パソコン全体の最大消費電力×2)を勧められます。

けれども、実際にそこまで電力を使うことなんてほぼありません。実際、ゲーム中やベンチマーク中にワットモニターで測っても、見積った最大値の70-80%で推移してました。
計算上の最大消費電力×1.5程度でも十分かも…。

PCケース


NZXT Manta 電源なし Mini – ITXケース

完全に見た目で選んでます。mini-itxしか対応していない癖にATX並みの大きさ…。

まあ大きいほうが配線もしやすいし、大きなファンを載せれてエアフローもしっかり確保できるので不満無しです。

スペック一覧と費用

部位 製品 価格
CPU Intel Core i5 8400 (Coffee Lake-S) ¥23,000
マザーボード ASUS ROG STRIX H370-I GAMING ¥16,000
メモリ PATRIOT Viper Elite DDR4 PC4-21300
16GB x2
¥2,3000
GPU GeForce GTX 1080 
EVGA FTW HYBRID GAMING
$579.99
(約\65,000)
ストレージ M2 SSD: Intel 760p M.2 PCIEx4 256GB
SATA SSD: 250GB
HDD: 1TB
¥8,800
¥6,500
¥5,000
ケース NZXT Manta Mini-ITX ケース ¥2,2000
電源 Seasonic SSR-550RMS 550W ¥11,000
OS Windows 10 win7からのupdate
合計額   約18万円

以上が今回組みなおしたゲームや機械学習・ディープラーニング向けの自作パソコンです。

一から組み立てたら20万円ほど、ケースとかに好みを反映させなければ15万円くらいでも行けそう。

とりあえずはこのパソコンで楽しんでいこうと思います。そのうちkaggleで大きなデータセットとかも扱ってみたい…。