メインコンテンツへスキップ

はじめに

フロンティアへようこそ

歴史を振り返ると、新しいツールが登場するたびに科学的理解は飛躍的に深まってきました。望遠鏡、顕微鏡、大型ハドロン衝突型加速器——それぞれのツールが新たな問いを投げかけ、より大きな実験を可能にし、新たな研究領域への扉を開いてきました。1960年代には高性能コンピューティング(HPC)も登場し、複雑な計算課題や重要な科学的問題を解くための不可欠なツールとなりました。

そして今、科学の進歩をさらに加速させる新たなツールが登場しました。量子コンピュータです。まだ発展途上の技術ではありますが、量子コンピュータは私たちが効率的に解ける計算問題の種類を大きく変える可能性を秘めています。このコースでは、これら二つの技術が連携することで、計算可能性の境界をどのように広げられるかを探っていきます。

私たちの使命は明確ですが、野心的でもあります。世界が直面する最も困難な問題に取り組むために、これらの技術を活用するための概念的・実践的な知識を皆さんに提供することです。

このビデオでは、このコースの目標と、HPCと量子コンピューティングを組み合わせる動機について説明します。

HPC

高性能コンピューティングとは、正確には何でしょうか?高性能コンピューティングは、現代の計算問題を解くための基盤となっています。そろばんや紙と鉛筆といったシンプルなツールで高度な問題が解けた時代はとうに過ぎ去り、今では莫大な計算能力を必要とする問いやデータセットを扱う時代となっています。

高性能コンピューティングの歴史は、1960年代における最初期のスーパーコンピュータの開発にまで遡ります。これらは、通常のコンピュータよりも迅速に大規模な科学・工学問題を解くために特別に設計されたマシンでした。

最初期の著名なスーパーコンピュータの一つが、1964年に登場したCDC 6600です。スーパーコンピューティングの父とも称されるSeymour Crayによって設計されたこのマシンは、当時最速のコンピュータでした。並列演算ユニットやパイプライン処理といった革新的なアーキテクチャを採用しており、これらの概念は現在のHPCにも受け継がれています。

Crayはその後もCray-1(1976年)でさらなる進化をもたらしました。ベクトル処理という手法を導入し、大規模なデータ配列に対する演算速度を大幅に向上させることで、科学計算に非常に適したマシンとなりました。

単一プロセッサの速度向上が頭打ちになるにつれ、HPCは並列コンピューティング——問題を分割して多数のプロセッサが協調して処理する方式——へと進化しました。1980年代から1990年代にかけて、並列アーキテクチャがHPCの主流となりました。2000年代初頭には、高速ネットワークで接続された汎用サーバのクラスタへと移行し、スーパーコンピューティングのコストが下がり、より多くの人々がHPCを利用できるようになりました。

この進化の過程において、IBM®はHPCの研究と実装の最前線に立ち続けてきました。特にIBM Blue Geneスーパーコンピュータは、2000年代から2010年代初頭にかけて最も影響力のあるスーパーコンピュータファミリーの一つでした。この時代は大規模並列システムが飛躍的に成長した時期であり、Blue Gene/Qはその代表例として、1インスタンス(Sequoia)で100,000ノードを誇りました。IBMが開発したオークリッジSummitは、2018年にExaOPS(混合精度1.88エクサフロップス)を達成した最初のHPCリソースです。

現在はエクサスケールの時代を迎え、スーパーコンピュータは毎秒101810^{18}回の演算(エクサフロップス)を実行できるようになっています。このマイルストーンを最初に達成したスーパーコンピュータが、オークリッジ国立研究所に設置されているFrontierです。

なぜこれほど強力な計算資源が必要なのでしょうか?人類の健康や福祉に深く関わる問題の中には、モデル化や解決に極めて大規模なリソースを要するものがあります。気候モデル、地球のマントルの構造と運動の研究、流体力学シミュレーションなどがその例として挙げられます。

この種の多くの問題は、IBMのシステム上でIBMの研究者や共同研究者たちによって取り組まれてきました。この継続的なリーダーシップは広く認められており、例えばIBMの研究者はGordon Bell賞を6回受賞しています。[1]

HPCは非常に活発な分野であり、常に新たな限界を突破し続けています。現代の能力の概観としては、Top 500スーパーコンピュータのリストをご覧ください。

量子コンピューティング

量子コンピューティングは、古典的なコンピュータの延長線上にない、まったく新しいコンピューティングパラダイムです。重ね合わせ、エンタングルメント、量子干渉といった量子力学的な性質を活用することで、古典コンピュータだけでは手に負えない問題を解くことを目指しています。このコースでは量子コンピューティングの独自性の詳細は扱いません(詳しくは量子情報の基礎をご参照ください)。代わりに、この二つのインフラを組み合わせることで応用科学においてどのようなブレークスルーが生まれる可能性があるかを議論します。

ハイブリッドアプローチ

最も重要な点として、これら二つの計算パラダイムは競合するものではありません。今は最適化されたワークフローが二つのパラダイムを補完し合い、それぞれのタスクを最も効果的に処理できる側に割り当てることが求められる時代です。量子コンピュータが古典的なシステムに取って代わるわけではありません。むしろ、計算科学の未来はますますハイブリッドなワークフローに依存するようになるでしょう。そこでは、HPCが高性能な古典処理を担い、量子コンピューティングが独自の能力を提供します。実務者、研究者、技術者として、これらのツールを組み合わせる方法を理解することは、次の科学・技術の時代におけるリーダーとしての地位を確立することにつながります。

量子コンピューティングとHPCが、幅広い産業においてどのようなブレークスルーを可能にするかを探っていきます:

  • 化学:新薬や新素材の発見の加速。

  • エネルギー:改良された触媒、電池、クリーンエネルギーソリューションの設計。

  • 金融:リスクのモデル化、ポートフォリオの最適化、新たな金融商品の開発。

  • AIと機械学習:モデルのトレーニング、最適化、データ分析の強化。

なぜ古典コンピューティングを超えるのか

人類は上記の応用分野においてHPCを用いて大きな成功を収めてきました。しかし、世界最速のスーパーコンピュータでさえ、問題のスケールに対して計算量が階乗的または指数的に増加する場合には困難に直面します。例えば、複雑な分子内の50個の粒子のあらゆる配置を列挙しようとすると、配置の数は少なくとも階乗的に増加し、地球上すべてのデータセンターが持つメモリを合計しても足りないほどになります。

別の例として、10,000都市の配送ルートを計画することを考えてみましょう。可能なルートの数は膨大になり、これまでに作られたすべてのコンピュータが1マイクロ秒に1ルートずつ試したとしても、計算にかかる時間は現在の太陽の年齢をはるかに超えるオーダーになります。これらの数字は単に大きいというだけでなく、指数的に増加するため、粒子や都市が一つ増えるたびに計算の負荷は単純なスケーリングをはるかに超えて膨れ上がります。

GPUを追加し続けることはできますが、これほど膨大なデータを処理するには既にメガワット級の電力が必要で、倉庫ほどの規模の施設が必要となります。ある時点で、古典的なハードウェアはもはや実用的かつ経済的な方法でスケールアップできなくなります。だからこそ研究者たちは、情報を重ね合わせの状態に保存し、こうした指数的な増加の問題に直接対処できる場合がある量子プロセッサに注目しているのです。量子プロセッサは、古典コンピュータでは現実的な時間内に解けない特定のケースを解決できます。

HPCはいずれ、組み合わせ論と熱力学によって決まる根本的な限界に達します。量子コンピューティングはその限界を消し去るわけではありませんが、非常に特定のシナリオではその限界を迂回できる場合があります。

なぜ量子コンピュータだけでは不十分なのか

量子コンピューティングが古典コンピューティングの特定の限界を迂回できるなら、なぜ完全に量子コンピュータだけに頼らないのでしょうか?第一の最も明白な理由は、量子コンピュータは機能するために古典コンピュータを必要とするからです。回路をコンパイルして量子プロセッサに送る、測定結果を保存する、基本的な後処理を行うといったタスクはすべて、古典コンピューティングシステムによって実行されます。

では、なぜさらに高性能コンピューティングが必要なのでしょうか?いくつかの理由があります。量子コンピューティングの現在および将来の多くの応用は、非常に大きな探索空間を持つ問題を対象としています。量子アルゴリズムはこの空間のサイズを大幅に削減できる場合がありますが、実際には残った問題がHPCリソースの恩恵を受けるほど大きい場合もあります。さらに、HPCと量子コンピューティングの強みのバランスをとり、アルゴリズム全体を量子ノイズの影響に対してより堅牢にするために、十分な量の作業をHPCに委ねるアルゴリズムも存在します。

具体的な例として、サンプルベース量子対角化(SQD)アルゴリズムが挙げられます。レッスン4で探求されるこのアルゴリズムは、HPCと量子コンピューティングが実際にどのように補完し合えるかを示しています。追加的な背景については、IBM Quantum Learningの「量子対角化アルゴリズム」コースをご参照ください。

このコースは、高性能コンピューティング(HPC)インフラや量子コンピューティングと密接に関わっている、またはこれから関わる予定の専門家や学生を対象としています。量子技術の急速な進歩により、量子プロセッサが従来のHPCリソースと並んで統合され、より正確な結果を達成し、問題解決への新たなアプローチを可能にする近未来が予想されます。このコースは、そのようなハイブリッドワークフローを構築・実行する方法を理解したい学習者を対象としています。

参加者の背景はさまざまであることが予想されます。HPCの経験はあるが量子コンピューティングは初めての方と、量子コンピューティングに精通しているがHPCは初めての方という、主に二つのタイプの学習者を想定しています。両グループの方々が最大限の学習効果を得られるよう、以下にそれぞれ向けた事前準備の推奨リソースを提供します。

HPCが初めての方へ

このコースでは、分散メモリプログラミング、メッセージパッシング、並列プログラミングモデル、リソース管理などの主要なHPCの概念に対する知識を前提としています。また、Slurm ワークロードマネージャーなどのツールも使用します。これらの概念の多くは必要に応じて簡潔に紹介しますが、事前に触れたことがあると学習がより円滑に進みます。役立つリソースとして以下が挙げられます:

その他のリソースはこちらのGitHubリポジトリでもご覧いただけます。

量子コンピューティングが初めての方へ

このコースでは、最小限の入門的な説明で量子コンピューティングの基本的なツールと概念を使用します。参加者には、Qiskitの実用的な知識、量子ゲートと量子回路への習熟、そしてサンプリングベースのアルゴリズムへの基本的な理解を事前に持っていることをお勧めします。以下のリソースが準備に役立ちます。

  • IBM Quantum® Composerガイド: Composerのチュートリアルです。Composerはドラッグ&ドロップで操作を追加して量子回路を構築し、量子ハードウェア上で実行できるグラフィカルな量子プログラミングツールです。
  • Qiskitの紹介: Qiskitのインストールと設定を支援するガイド集です。
  • Hello world: 初めての量子プログラムをセットアップして実行するQiskitの短いチュートリアルです。
  • 量子対角化アルゴリズム: このコースで使用するSQDを含む、複数種類の量子アルゴリズムを扱うコースです。

その他のリソースはこちらのGitHubリポジトリでもご覧いただけます。

あらゆる背景の学習者にこのガイドが役立つでしょう。量子リソース管理のためのSPANKプラグインとSlurmについて解説しています。

量子コンピューティングの独自性から生じるいくつかの手続き上の違いが、このコースにとって重要です。例えば、量子コンピューティングにはRAMに相当する良いアナログが存在しません。情報は量子ビット自体の状態に格納・処理されます。測定によって量子ビットの一部の特徴を古典的に記録できますが、そのような測定は重ね合わせやエンタングルメントを含む量子状態の豊かさの多くを破壊してしまいます。さらに、量子コンピューティングリソースは現時点では他のHPCリソースと同じノード上には存在せず、量子リソースのユーザーは古典的なHPCリソースに対して持つようなスケジューリングの制御を同じレベルでは持てない場合がよくあります。これらの現実については、適切なレッスンで改めて説明します。ここでの要点は、量子コンピュータは世界を変える存在であり、HPCと統合される必要がありますが、CPU、GPUなどと同じように制御・使用できる「単なるもう一つの」HPCリソースではないということです。量子コンピュータは、多くの計算問題へのアプローチの仕方そのものを変えます。

このコースについて

このコースを修了する頃には、単に技術用語を繰り返せるだけでなく、特定のサブタスクを量子プロセッサに割り当て、残りの作業をCPUとGPUが処理するモダンなハイブリッドワークフローを管理する方法を理解しているでしょう。古典ノードとQPU間をスムーズに移行するジョブのスクリプトを書く方法、結果を正確に解釈する方法、そして量子加速が本当に計算を改善できる場所(そしてできない場所)を認識する方法を学びます。同様に重要なことは、成長マインドセットを維持する実践です。新しく急速に進化する分野では、誰も一度にすべてを学べるわけではなく、真の進歩は反復、実験、そして問いを立てることから生まれます。

このコースは5つの章に分かれており、以下のトピックを扱います:

コースの概要

  • レッスン1 - このレッスンでは背景と動機について解説しました
  • レッスン2 - 計算リソースとその管理
  • レッスン3 - 異種計算環境を含むプログラミングモデル
  • レッスン4 - ハイブリッドワークフロー向けの量子アルゴリズム、特にSQD
  • レッスン5 - 将来の展望と方向性

このコースをあなたのランチパッドと考えてください——最終レッスンを修了した後も、量子・古典のフロンティアを探求するための思考的ツールキットと自信を築く場所として。

参考文献

[1] https://www.hpcwire.com/off-the-wire/gordon-bell-prize-awarded-to-ibm-and-leading-university-researchers/