普段量子コンピューターを仕事としているものです。
今日は量子コンピューターのプログラミングを行う際に必要となるコンピュータのスペックについて考えてみたいと思います。弊社では量子コンピューター関連のアプリケーション開発を行っていますが、量子コンピュータと同じような計算をするためには、どうしても既存のコンピューターでhigh-performanceコンピューティングのような高性能なマシンが必要となります。
量子状態と呼ばれる量子コンピューターの状態を計算するためには、多くのメモリが必要です。ここではプロフェッショナル向けのマシンではなく、一般向けのコンシューマ向けの構成で、コンピューターのプログラミングをするためのhigh-performanceな コンピュータシステムの考察をしてみたいと思います。実際にコンシューマ向けのものをサーバールームに設置していて、サービス提供は難しいと思いますので、社内向けや研究開発やアプリケーション開発向けの構成にしたいと思います。
前提条件として、量子コンピューティングはGPUやCPUのメモリ量が非常に効いてきます。一方で、計算過程はとても重たいのですが、計算結果の取得や保存はそう多くの保存領域を必要としません。マザーボードやCPUはGPUを全体の構成を性能と価格のコストパフォーマンスと一緒に考えてみたいと思います。弊社は普段、業務用の構成を利用する企業ですので、少し高めの構成を考えています。より価格と性能のバランスが良いコストパフォーマンスもあると思います。弊社のエンジニアの給料が少し高めなため、そうした時間帯の効率化を最大化したいと言う思いから自社内で利用する場合には多少高くても時間が節約できるような構成を選びます。では見てみましょう。
ソフトウェア
基本的にはエヌビディアのGPU環境を利用した開発環境使っています。最近では弊社ではIBM Qiskitを中心として開発することが多いです。また一般的なDeepLearningフレームワークを利用することが非常に増えていますので、GPUの構成が重要となります。今回はコンシューマの構成ですので、マルチGPUは利用しないため、単体のCPUとGPUそしてメモリそしてSSDを考えてみたいと思います。
量子回路作成
Qiskit
バックエンド
Pytorch / JAX / cuQuantum
数理ライブラリ
numpyなど
ハードウェア
普通のマザボ、それにM2.SSDを保存領域として、メモリ、GPU、CPUで構成します。今回は弊社は水冷を想定しますが、そこは特に構成上に課題になることはあまりないかと思います。SSD領域はあまり使わないと思うので、欲しい方はHDDやSSDを追加するとか柔軟に。今回は特にCPU/GPUのベンチマークについてみてみます。
CPU
CPU 主にインテル社AMD社のものを使うことができます。今回はインテルのcoreシリーズとAMDのRYZENシリーズをコストとベンチマークから比較してみたいと思います。NVIDIAのGPUコンピューティングプラットフォームを利用する場合には、CPUではなく、GPUを利用して計算しますので、GPUのメモリや速度が重要になってきます。特に大きな問題を解きたい場合には、GPUメモリもう重要になってきますが、コンシューマ向けのマシンはGPUメモリがそう多くは無いことがわかっています。また最新のものは消費電力も高く、SLIと呼ばれる複数のCPUを接続するものも種類が減っていますので今回はそうしたものは想定しないとします。
ベンチマーク
こちらを参考にし、Amazonでそこそこの値段で買えるものを選んでいます。
https://www.cpubenchmark.net/high_end_cpus.html
今回はミドルハイくらいを選んでいます。めちゃくちゃ高性能でもないけど普通より性能がいい範囲です。結構面白かったです。
まずはベンチマークです。AMDとIntelが入り乱れています。
次に値段です。ベンチマーク順に並べたまま値段を表示します。
性能に対して安い機種も結構ありました。単純にベンチマークあたりの金額を表示しています。大きい方がコスパ高いです。
全体的にはどうでしょう。個人的にはRyzen9 7950XとCore i7-13700が気になりました。これだけで性能は決まらないのでしょうが、参考にしたいと思います。
GPU
https://www.videocardbenchmark.net/high_end_gpus.html
次にGPUです。こちらはNVIDIAのツールを使うので、NVIDIAハードが中心になります。また、ビデオメモリも重要なので、その点も分類したいと思います。
まずベンチマークです。4090圧勝です。メモリ量を重ねて置いてます。
次に値段です。結構ばらつきがあります。
コスパです。ベンチーマークを値段で割りました。スコアが高い方がコスパ高いです。
コスパまでを見ると、結構ビデオメモリに引っ張られています。量子コンピュータの計算をする際にもこれは重要です。大きな計算をしない場合には、コスパの高いGPUでも良さそうですが、規模の大きな計算をする際には必ずしもベンチマークだけで決められなさそうです。
まとめ
今回はほどほど高性能なマシンを見ました。通常の私たちは毎日使ってアプリを作り、給料や仕事の売り上げに関わるので、ほどほどコスパでいいものを選びたくなります。GPUの値段が結構支配的です。CPUシミュレーションで済ませる場合には、CPUを高いものにして、GPUを中心にする場合にはCPUの値段を抑えていいGPUを購入というのも手かもしません。ずっと使うという点では、仕事で使うならRyzen7950X + RTX4090かなと思いました。4080もいいなと思ったのですが、ビデオメモリ16Gが後々不利になってくる感じがするかなと。以上です。