Portable Acceleration of Learning With Errors KEMs for Post-Quantum Cryptography
本論文は、OpenMP Target offloadingを用いたLearning With Errors (LWE) ベースの鍵カプセル化メカニズム (KEM) のポータブルなGPU実装を提示し、単一のソースコードベースによって、ベンダーロックインを回避しながらNVIDIAおよびAMDの両方のアクセラレータにおいて大幅な性能加速とエネルギー効率を実現できることを実証するものである。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
あなたは、未来の「量子」スーパーコンピュータでさえも解読できない、超強力なデジタル金庫を作ろうとしていると想像してください。これを行うには、「学習誤差(Learning With Errors: LWE)」と呼ばれる、巨大で乱雑な数学のパズルを解く必要があります。これは、まるで、何百万もの小さなノイズを含んだ磁石でできた干し草の山の中から、特定の針を見つけ出すようなものです。しかも、探せば探すほど、磁石がカタカタと動き回ります。
問題は、このパズルを解くには膨大な時間がかかることです。それは、小さなスプーンを使って、砂の山を一粒ずつ動かそうとするようなものです。そこで、この論文の著者たちはこう問いかけました。「もし、巨大で超高速な建設作業員(GPU)を使って、その砂を動かしたらどうだろう?」
大きな発見:一つのコード、二つの作業員
通常、建設作業員を雇いたい場合は、特定のチーム(例えばNVIDIAのCUDA)を雇い、彼らだけに理解できる指示書を書かなければなりません。もし別のチーム(例えばAMD)を雇いたくなったら、指示書のすべてを書き直す必要があります。これはコストがかかり、非常に面倒な作業です。
この論文は、たった一つの指示書(OpenMP Targetと呼ばれるものを使用)を書くだけで、NVIDIAのチームとAMDのチームの両方で完璧に動作させることができることを示しています。これは、材料を一切変えることなく、ガスコンロのキッチンでも電気コンロのキッチンでも、同じレシピが使えるようにすることと同じです。
魔法のトリック:キッチンの中に留まること
この数学のパズルにおいて、最大のタイムロスは、メインコンピュータ(CPU)と超高速なGPUの間を行ったり来たりすることです。これは、料理人が調味料をひとつまみ入れるたびに、パントリーまで塩を取りに行くようなものです。
著者たちは、この「塩」(数学に必要な乱数)を、GPUのキッチンの中にそのまま置いておく方法を編み出しました。彼らは、NVIDIAとAMDの両方のチームで動作するように、RNGonGPUというツールをアップグレードしました。これにより、GPUは席を立つことなく、自分が必要とするすべての乱数を生成できるようになりました。これによって、ワークフローがスムーズかつ高速に保たれます。
レース:誰が勝つのか?
チームは、4種類の異なる超高速コンピュータを使用して、この新しい手法をテストしました。
- NVIDIA A100: 強力で標準的なスーパーコンピュータ。
- NVIDIA GH200: 「脳(CPU)」と「筋肉(GPU)」が超高速なハイウェイ(NVLink)で結合された、巨大な「スーパーチップ」。
- AMD MI300X: 巨大なメモリバンクを備えた、強力で標準的なスーパーコンピュータ。
- AMD MI300A: 脳と筋肉が、全く同じメモリバンクを共有しているチップ。
結果は以下の通りです:
- スピードアップ: 数学のパズルが巨大になったとき(サイズ 4,096)、GPU版は通常のコンピュータ版よりも120倍高速でした。さらに大きなパズル(サイズ 16,384)の場合でも、GPUは依然として猛烈な速さでしたが、通常のコンピュータはほとんど眠っているような状態でした。
- 勝者: NVIDIA GH200が最も速く、作業を約60秒で完了しました。AMD MI300Xが僅差で2位となり、約85秒かかりました。どちらの機械も、データを素早く流し込める巨大で高速なメモリバンク(HBM3)を備えています。
- 意外な敗者: AMD MI300Aは、脳と筋肉がメモリを共有しているため、素晴らしい結果になると思われました。しかし、実際にはこれが最も遅く、114秒かかりました。なぜでしょうか? それは、脳と筋肉が同じ水ホースを奪い合っていたからです。GPUがデータを動かそうとしている間、CPUも独自の計算を行おうとしており、互いに邪魔をし合っていました。これは、二人が同時に一つのストローで飲もうとしているようなもので、どちらも十分に飲むことができません。
エネルギーと熱
チームは、これらのマシンがどれだけの電力を消費したかも調査しました。NVIDIA GH200は単に早く終わっただけでなく、より少ないエネルギーで仕事を終えました。パズルを解くのに約9.7 kJのエネルギーを消費しましたが、AMD MI300Xは約26.2 kJを必要としました。つまり、NVIDIAのマシンは、エネルギー効率において約2.5倍優れていたことになります。
これが意味すること
この論文は、超高速なセキュリティを得るために、NVIDIAかAMDのどちらか一方を選ばなければならないわけではないことを証明しています。一つのコードベースで両方を動かすことができるのです。しかし同時に、単に高速なチップを持っているだけでは不十分であり、メモリがどのように構成されているかが同じくらい重要であることも示しました。もし脳と筋肉が同じメモリを奪い合えば、システム全体が遅くなってしまいます。
要するに、著者たちは、ポータブルでGPU加速されたセキュリティは、単なる夢ではなく、メモリの車線での渋滞を避けるための正しいハードウェア構成を選べば、より速く、より効率的に量子耐性のあるロックを実現できる現実的なものであると結論付けています。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。