昨年は CPU 業界にとって激アツな年でした。特に注目を集めたのが、AMD が販売した Ryzen、EPYC、Threadripper でした。
Threadripper については、計算化学.com でも購入し gaussian 16 のベンチマークを測定いたしました。
参考:Threadripper の Gaussian16 ベンチマーク
参考:Threadripper 並列化効率改善?【gaussian16】
また、Intel が急遽対抗して販売した core i9 シリーズにも注目が集まっていました。
計算化学.com でも core i9 シリーズのベンチマークを測定すると昨年アナウンスしていましたが、最近になってやっと 16 コアの core i9-7960x を購入することができました。
今回は、core i9-7960x のセットアップの様子と実際に Gaussian を使った時の感想などについて記事にしました。
目次
なぜ 7960x を選んだのか?
core i9 シリーズでは、7900x 以下が Little Core Count (LCC)、7920x 以上が High Core Count (HCC) です。当然コア数がより多く、Xeon から回されたされたと言われている HCC に注目しました。
管理人は、gaussian で計算を投げる時には 1 job に 4 core 使うことが多いです。
それぞれのモデルで gaussian の job を投げることを考えると以下のようになります。
7920x: 3job
7940x: 3job 2core 余り
7960x: 4job
7980xe: 4job 2core 余り
同時に 4 job 投げたいし、2 core 中途半端に余るのもよくないと思い、この時点で 7960x にほぼ絞りました。でも、7960x は価格も高いため、7940x でも良いかなぁとも思っていました。
次に、single thread の性能に着目しました。pass mark の single thread チャートを基に core i9 シリーズを並べ替えると
7900x > 7920x > 7960x > 7940X > 7980xe
となっています。驚くべきことに、7960x の方がコア数の少ない 7940x よりも single thread 性能が高いです。また、7980xe は他の i9 シリーズに比べて single thread 性能が低いです(それぞれわずかな差ですが)。ここで、7960x を購入することに決めました。
さらに、Turbo boost 2.0 使用時のクロック数についても一応調べておきました。7960x は、full load 時でも 3.6 GHz 出るっぽいです。
画像は、こちらのページから
今回使用した機材
CPU: INTEL CPU Core X-series BX80673I97960X
m/o: MSI X299 GAMING PRO CARBON AC マザーボード [Intel X299 チップセット搭載 LGA 2066 ソケット] MB3933
SSD: SanDisk SSDプラス 240GB 2.5インチ 内蔵型 SATA3 6Gb/s 読取り:520MB/s 書込み:400MB/s 海外リテール品 SDSSDA-240G-G26
RAM: CORSAIR DDR4 メモリモジュール VENGEANCE LPX Series 8GB×2枚キット CMK16GX4M2B3200C16
GPU: MSI Radeon RX 550 AERO ITX 2G OC グラフィックスボード VD6340
CPU Cooler: Arctic Liquid Freezer 240 CPU Cooler with 120mm Low Noise Fans, 240 x120mm Radiator, MX4 Thermal Compound Cooling [並行輸入品]
core x9 の中へ
以前紹介した動画で、threadripper 1950x を core x9 のケースに入れました。core x9 は非常に大きくまだまだ余裕があるため、core i9-7960x も同じケース内に入れることにしました。
マザーボードの裏面がケースの金属部分に直接触れるのは避けたいと思いましたが、ATX のマザーボードを固定する板の持ち合わせがありませんでした。そのため今回は、木の棒にマザーボードを固定することにしました。
下写真のようにキリと二種類のドライバーを使って作業しました。まずは、マザーボードを木の棒の上に置いて、ネジ穴のところからキリで印をつけていきます。次にネジ穴を開けるようのドライバーで穴を広げます。そして木の棒にマザーボード固定用のネジをドライバーで強引に挿しました。作業中は、木粉が出ますので、マザーボードから離れた場所で作業した方が良いです。
下図のような感じで、マザーボードに木の棒を取り付けることができました!
core x9 内に入れるとこんな感じになりました。
Arctic Frozen 240 取付時の注意
Arctic Frozen 240 は、Amazon などの通販サイトでは LGA2066 に対応しているか明記してありませんが、公式サイトには LGA2066 対応と書かれています。LGA2066 に取り付けるためには、付属の LGA2011(-3) 対応のネジを使います。
管理人が普通に組んでみて gaussian の 16コアの job を投げてみたところ、96 度くらいまで温度が上昇しました。
絶対に何かがおかしいと思いよく調べてみると、若干 Arctic Frozen 240 が動きました。つまり、CPU と CPUクーラーが完全には密着していませんでした。その後、少しきつめにネジを回して再度計算を投げたところ、full load の時に cpu 温度が 75 度くらいまで上昇してしまいました。。。8 コアで計算するときは 58 度くらい、4 コアで計算するときは 46 度くらいでした。
今回使用した CPU クーラーは 240mm ラジエーターの簡易水冷で、12 cm ファンが 4 つもついているものですが、これで冷やせないのはおかしいと思いました。ちなみに、室温は 15 度です。
その後、ドライバーでこれ以上回せないと言う限界までネジを回したところ full load 時で 46 度まで cpu 温度が下がりました。これで、オーバークロックもできそうな感じです。
現在の計算機の用途
これまで、当サイトでは core i7-7700、threadripper 1950x、core i9-7960x の自作の様子を紹介してきました(ちなみに計算機はこれ以外にもまだまだあります。)
core i7-7700 には GTX1080 ti が積んであるため、重たいグラフィクスの処理などをしています。例えば、ONIOM 計算のインプットを作るために Gauss View を操作するときや、AutoDock のインプットを作るときなどに使用しています。CPU と GPU 両方性能が高くないと molcular viewer は重くなる傾向があるように思います。特にタンパク質リガンド複合体を gauss view 上で ball&stick 表示するとノートパソコンではフリーズしてしまうことが多々あります。
threadripper 1950x には GTX1080 ti が二台積んであります。threadripper は機械学習、深層学習に主に使いますが、他の計算にも使います。また予算があれば更に GPU を追加していこうと考えています。
core i9-7960x には、GPU は最低グレードのもの (Radeon RX 550 2GB) しか積んでいません。この計算機は、基本的には gaussian 専用で使っていきますが、threadripper と core i9-7960x を合わせて rosetta の計算をすることもあります。
core i9-7960x の gaussian ベンチマークは、また後日記事にします。
手元に計算機を持つメリット・デメリット
メリットは、待ち時間なく好きな時に好きなだけ計算を投げれることでしょう。スーパーコンピューターなどでは、他のユーザーの使用状況によって待ち時間が左右される、Wall Time があるなど制約が多いです。管理人が普段使用している XSEDE では、Wall Time が 48 時間であるため、巨大分子系の計算などは難しい場合もあります。また、コンパイラーが入っていないため、ソフトのインストールが困難な時もあります。
以前、とっても古いシステムの計算クラスタを使用した際に、gcc のバージョンが gcc3 であったために自分で書いたプログラムがコンパイルできなかったことがありました。。。
デメリットは、大きく 3 つあると思います。
まず一つ目は、電気代などの維持費です。例えば今回紹介した core i9-7960x は TDP が 165W なので概算で 200W とし、毎日 full load で計算し続けることを考てみましょう。東京では 1 kW/h が約 20-30 円なので、これに基づいて計算すると電気代は、1 ヶ月あたり 3000〜4000 円、一年間で 3.5〜5 万円 です。1 ノードでこれなので、複数ノードかつ GPU なども足していくと意外と電気代がかかります。また、HDD が故障した時の修理費用などもあります。
二つ目は、すぐに古くなってしまうことです。今でこそ CPU の成長率は落ちましたが、1-2 年経てば使い物にならないって時代のときは、買い換えては廃棄してのような感じだったと思います。今では、GPU がこんな感じでしょうか?昨年末に NVIDIA が発表した Volta は、前世代に対して約 9 倍の性能を持っているとアナウンスされていました。管理人の持っている GTX 1080Ti もそのうちゴミになるのでしょうか?
三つ目は、全て自分で設定しなくてはならないことです。Linux のインストール、RAID の設定、ソフトのインストール、各種環境設定、ユーザー設定、ジョブスケジューラーの設定などなど。やり方を知っていたとしても、それなりに時間を取られます。また、システムの更新も定期的にやっていかないといけません。
でも、このようなデメリットがあるにしても、手元ですぐに計算を実行できるのは何者にも代え難い大きなメリットです。個人的には計算機を買うのをオススメしています。また予算に余裕があるのであれば、Desktop モデルではなく Xeon を書くことをオススメします。
関連する記事
- GTX1080 Ti 2 枚挿し + Threadripper 1950x in Thermaltake core x9
- ニューラルネットワークを利用した粗視化シミュレーション コンフォメーション探索
- Threadripper Gaussian16 ベンチマーク
- Threadripper 自作 PC 組み立て編【AMD】
- IRC 計算がうまくいかない時
- スピン状態依存的な光環化反応の計算
- Threadripper 正式発表【8月発売予定】
- 【Gaussian 16】デスクトップ PC で並列計算する際の注意点【Hyperthreading】
- スパコンランキング発表!日本はGREEN500上位独占!【2017年6月】
- 【AMD_Naples】正式名称はEPYCに決定!クロック数は2.8 GHz【基本スペックなど】
- GPU を用いた並列計算
- 自作 PC をつくってみた!
- Fedora25 に nVIDIA のドライバーをインストール
- 自作 PC を作ってみた!【OS 編】