AIディープニューラルネットワーク(DNN)の学習において、GPUは実行ユニット(コア)の数が多いという理由だけで、ほとんどのCPUよりもはるかに優れていることで知られています。しかし、ライス大学のコンピュータ科学者が提案した新しいアルゴリズムは、その実力を逆転させ、CPUを最先端GPUの15倍もの速度にまで高めるとされています。
最も複雑な計算課題は、通常、ハードウェアを投入したり、タスクを解決できる専用のハードウェアを開発したりするなど、力ずくの手法で解決されます。DNNのトレーニングは、今日最も計算負荷の高いワークロードの一つであることは間違いありません。そのため、プログラマーがトレーニングのパフォーマンスを最大限に高めたい場合、ワークロードにGPUを使用します。これは主に、ほとんどのアルゴリズムが行列乗算に基づいているため、計算GPUを使用することで高いパフォーマンスを達成するのが容易になるためです。
このエンジンは、Locality Sensitive Hashing(LSH)を用いて各更新時にニューロンを適応的に識別し、計算性能要件を最適化します。論文によると、変更を加えなくても、2億パラメータのニューラルネットワークの学習において、ウォールクロック時間でNvidia V100 GPU上で最適化されたTensorFlow実装よりも高速化できるとのことです。
「ハッシュテーブルベースのアクセラレーションはすでにGPUを上回っているが、CPUも進化している」と研究共著者のシャブナム・ダガギ氏は言う。
Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。
ハッシュ処理を高速化するため、研究者らはアルゴリズムをベクトル化および量子化し、IntelのAVX512およびAVX512_BF16エンジンでより適切に処理できるようにしました。また、メモリの最適化もいくつか実装しました。
「私たちは、[AVX512 および AVX512_BF16] CPU のイノベーションを活用して SLIDE をさらに進化させ、行列乗算に固執しなければ、最新の CPU のパワーを活用して、最高の専用ハードウェアの代替品よりも 4 ~ 15 倍速く AI モデルをトレーニングできることを示しました。」
Amazon-670K、WikiLSHTC-325K、Text8データセットで得られた結果は、最適化されたSLIDEエンジンによって非常に有望なものでした。IntelのCooper Lake(CPX)プロセッサは、Amazon-670KではNvidiaのTesla V100を約7.8倍、WikiLSHTC-325Kでは約5.2倍、Text8では約15.5倍も高速化できます。実際、最適化されたCascade Lake(CLX)プロセッサでさえ、NvidiaのTesla V100の2.55~11.6倍の速度を実現できます。
AVX512およびAVX512_BF16対応CPUはクライアントデバイス、データセンターサーバー、HPCマシンなど、あらゆる場所で使用されているため、これらのCPU向けに最適化されたDNNアルゴリズムは間違いなく理にかなっています。そのため、これらのCPUのあらゆる機能を活用することが非常に重要です。
しかし、 絶対的なパフォーマンスに関しては落とし穴があるかもしれない ので、少し推測してみましょう。NvidiaのA100は、研究者が比較のために使用しているNvidiaのTesla V100(おそらくA100の入手が難しいため)と比べて、トレーニングにおいて3~6倍高速になるとされています。残念ながら、Amazon-670K、WikiLSHTC-325K、Text8データセットにおけるA100の数値は得られていません。最適化されたアルゴリズムを使用すれば、A100はIntelのCooper Lakeに勝てないかもしれませんが、これらのAVX512_BF16対応CPUは(A100のように)広く入手できるわけではありません。そこで疑問なのは、NvidiaのA100はIntelのCascade LakeやIce LakeのCPUと比べてどうなのかということです。
アントン・シロフはTom's Hardwareの寄稿ライターです。過去数十年にわたり、CPUやGPUからスーパーコンピュータ、最新のプロセス技術や最新の製造ツールからハイテク業界のトレンドまで、あらゆる分野をカバーしてきました。