yokaのblog

湖で微生物の研究してます

デスクトップPCを導入した

 これまで2コア4スレッドCPU、8GB RAMの普通のモバイルPCで全ての作業を完結させていたのだけど、今回新たにデスクトップPCを導入して、解析環境を一新した。

 メタゲノム解析をするようになってから、ストレージもCPUもメモリも桁違いに要求されるようになり、今は大掛かりな解析はほぼスパコン上で完結させている。なのでこれまでは「手元のマシンには別にパワーは必要ない」という考えで、機動性を優先してモバイル1台に全てを集約していた。一方で「ローカル環境にももっとパワーが欲しい」と思うことが少なくない頻度であった。例えば

  • エクセルやイラストレーターでヘビーな作業をしたり、 フローサイトメトリーのプロットやゲノムブラウザで大量のデータを描画して流し読みしたいときに、動作がもたつく
  • Webブラウザのタブを大量に開くとすぐメモリが枯渇して動作が重くなる
  • スパコンでやるまでもないちょっとした作業(seqkitでfastaを触ったり、blastnでfasta同士を比較したり、小規模なアンプリコンシーケンス解析をしたり)を手元のWSL上でやるのに、CPUやRAMが物足りないことがある
  • 何より、強制導入させられているMcAfeeが重過ぎて、PCが使い物にならない時間が長すぎる(もはやアンチウイルスソフトではなくウイルスソフトではないかと思っている)

さらに欲を言えば、

  • 高速SSD塩基配列アミノ酸の大規模データベース入れておいて、ちょっとした配列検索くらいだったら手元で素早くできてしまう環境
  • 小規模データ・テストデータのアセンブリマッピングくらいなら手元ですぐに試せる環境

にしたいという考えもあった。

これまでモバイル1台でやってきて、マシンを増やすとデータの同期周りの面倒も発生するので、最初はモバイルを高スペックなもの(モバイルワークステーションと呼ばれるもの)に買い替えて、それ1台で全てを完結させる方向で検討していた。だけど

  • ハイスペックなモバイルはどうしても大型化してしまい、携帯性が損なわれる
  • 所詮モバイルなので電源や冷却やスペースの制約があって、デスクトップPCのスペックには遠く及ばない
  • 高額なモバイルを常に持ち歩くのは破損や盗難のことを考えると怖い

という考えから見送りになった。

 次にデスクトップPCで考え始めたのだけど、今度は困ったのが、モバイルと違ってスペックも金額も青天井なので、「じゃあどこまでの機能を要求するのか?」ということだった。ヘビーな解析はスパコンでやるので、本格的なワークステーションは必要ないし、そもそもそんな予算も無い。だけどせっかくデスクトップにするのだからモバイルワークステーションよりはハイスペックにしたい。一方で色々調べてみて気が付いたのは「デスクトップって思ったよりデカいな」ということだった。デスクスペースはできるだけ節約したいし、大きなケースを足元に置くような場所も無い。「中身は空間だらけなのに、ケースはやたらでかい」というPCはどうしても受け入れがたくて、おのずと「コンパクトとハイスペックの両立」という視点で品定めをするようになった。

 最初に候補に挙がったのはASUSのMini PC ProArt PA90で、タワー型で中身がぎっしりと詰まってそこそこコンパクトで、インテルの1世代前の高スペックCPU(Core i9 9900K)に、静音性の高い水冷のクーラーを搭載しているというのがポイントだった。一方で、自分には必要のないGPUを積んでいる分コストが上がっていること(GPUを使う解析は全てスパコンでやるつもり)と、それを差し引いても、同価格帯で明らかにスペックの高いPCが他に手に入るというコスパの悪さがネックで足踏みをしていた。

 で、さらにいろいろと見て回ったうえで、最終的にたどり着いたのが、LenovoのThinkStation P340 Tinyだった。

f:id:yokazaki:20200924002013j:plain

片手に載るサイズのケースに、10コア20スレッドの最新世代のCPUと、64GB RAM、1TBと512GBの2枚の高速SDDが詰まっている。ポイントは、このサイズのPCに通常使われている省電力タイプ(TDP=35W)のCPUではなく、TDP=65Wの通常のCPU(Core i9 10900)を積んでいるという点。ちなみに、P340にはGPUを搭載するオプションもあるのだけど、GPUを搭載する場合は省電力タイプのCPUしか選べないようになっている。65WのCPUとGPUを同時に冷却するまでのキャパはないということなのだと思う。この「コンパクト化のためにギリギリを攻めている感」も決め手になった。ちなみに、HPやDellからも同様のサイズ・スペックのPCは出ているのだけど、コスパ的にlenovoが圧倒していたことと、昔からLenovo(というかThinkpad)ユーザーということもあって、迷う余地はあまりなかった。これで30万円を切っているのだからすごい。

 導入して1か月くらいが経つけど、全てが高速でとても快適になった。4Kのディスプレイで巨大なエクセルシートを無限スクロールさせても全く引っ掛からないし、リードのマッピングやblast検索を4 threads 4並列で回しながらWebブラウザのタブを大量に開いても何の支障もない。巨大なfastqファイル達をpigzで圧縮するのも、4スレッド時代の5倍以上の速度で終わる。メモリも64GBあれば、単離株のアセンブリとかなら手元で完結するし、シングルスレッドの性能が高いので、同じスレッド数ならXeonを積んだスパコンよりも早く終わる。塩基配列アミノ酸のデータベースも手元の高速SSDに入っているので、ちょっとした配列検索だったらblastのウェブサーバーに繋ぐよりも断然早い。

 心配していた冷却性能だけど、全コア(20 threads)フル稼働している時の挙動を見ていると、最初の数十秒は85Wくらいの消費電力で4.1GHzくらいで動いていて、その後は65W固定で3.6GHzくらいで動いていた。CPUの温度は最初一気に90℃くらいまで行くけど、その後は80℃前後で安定している感じ。使うスレッド数を少なくすれば、4.6GHzくらいで持続的に動くけど、消費電力は65Wで頭打ちになっていて、「CPU自体のスペックにはまだ余力があるけど65Wまでしか使わない」ような制御になっているのだと思う。これらの点で、スペックがさらに制限される35WのCPUにしなくて良かったなと思った。

 小さなファンで全力でCPUを冷却しているので、さすがにフル稼働していると結構うるさくて、ドライヤーを小さくしたような高い音が耳につく。たまにヘビーな解析をするくらいなら全く気にならないけど、長時間フル稼働するような使い方をする場合は静かな居室で使うのは少しためらわれるレベルだと思う。負荷がかかっていないときはもちろん静かで、たくさんウィンドウを開くとすぐにファンがフル稼働していた4threadsモバイルと比べれば、普段使いでの音は全然気にならない。あと、個体差だと思うのだけど、ファンがはずれだったようで、ケースを横置きにして使うと少しカラカラ音がするのが気になっている。そのうちなじんで消えることを期待して、当面は縦置きで使いながら様子を見ている。

 総じて、コンパクトになったことで感じている弱点はフル稼働時のファンの音くらいで、そこさえ気にならなければ、大きなケースのPCを選ぶ必要は一切ないのではと感じた。心配していたモバイルとの同期も、OneDriveが思いのほか優秀で何の問題もなく運用できている。悩んだ甲斐があって良い買い物ができたと思う。