ページの先頭です

ページ内を移動するためのリンク
本文へ (c)

ここから本文です。

GPUでの計算が何故今注目されているのか?

ライター:荒牧 大樹
2007年ネットワンシステムズ入社し、コラボレーション・クラウド製品の担当を経て現在はAI・データ分析製品と技術の推進に従事。最近では次世代の計算環境であるGPU・FPGA・量子コンピュータに注目している。

目次

GPUを利用した計算

GPUは元々はゲーム等で利用されるグラフィック計算に利用されていましたが、行列の計算に強い部分に注目して、Deep Learning等の機械学習の計算を高速に行う為に利用されるようになりました。最近ではHPC分野でもサーバへのGPU搭載は標準的に利用されるようになりTOP 500やGreen 500に登場するような、大規模なコンピュートクラスターもGPUを前提とした構成となっています。

機械学習の計算は学習と推論(予測)の2つの処理に分かれますが、長時間にわたって負荷の高い計算を行う学習の計算にはGPUが標準的に用いられています。推論時の処理はCPU/GPU/FPGA等様々なデバイスの中から費用対効果の大きいデバイスが選択されます。機械学習用のGPUはNVIDIAとAMDがリリースしていますが、今の所NVIDAのGPUが機械学習で標準的に利用されるGPUとなっています。

NVIDIAの動向

NVIDIAは機械学習の学習から推論まで対応した幅広いGPUをリリースしています。また、GPUのチップのみならずサーバに搭載するカードから、GPUを搭載した機械学習専用サーバまで提供しています。更には、NVIDIAのGPUを利用する為の各種OSに対応したドライバーと、GPUの利用を簡単にするミドルウェアであるCUDAをも提供しています。このCUDAがGPUで機械学習処理を行う場合の事実上の標準になっている事がNVIDIAの強みです。Deep Learningを利用する為のライブラリはTensorFlowやPyTorch等様々な種類がありますが、各フレームワークがGPUアクセスする場合は標準的にCUDAを利用しています。

元々はGPUのグラフィック処理に特化した機能を機械学習で活用していましたが、最近のNVIDIAのGPUには機械学習に対応した回路も盛り込まれるようになりました。それにより機械学習の処理速度が飛躍的に上昇しています。

NVIDIAは機械学習専用サーバを提供しており、高密度にGPUを集積しているのと共にGPU間の通信も高速化が図られています。これによりサーバ全体でより高速にDeep Learningの学習処理が行えるようになっています。

AMDの動向

AMDはNVIDIAと同様にGPUを販売していますが、AMD GPUの機械学習での利用はNVIDIAに比べると一歩遅れています。AMDは機械学習用のGPUをInstinctシリーズとしてリリースを始めており、機械学習用のGPU提供に力を入れ始めています。演算能力はNVIDIAとは大きく変わらないようですが、TensorFlow用の機械学習のライブラリをAMDのGPU上で利用する場合は問題が起きます。NVIDIAの提供しているCUDAのライブラリがAMDのGPU上で利用出来ない為です。これを解消する為にAMDはRocM等の取り組みでAMDのGPU上で各種機械学習ライブラリが動作するようにしています。RocMを利用して、AMDのGPU上で動作する機械学習のライブラリは増えていますが、AMDのGPUが機械学習の計算で標準的に利用されるまではもう少し時間が必要なようです。

シングルノードとマルチノードでの演算

機械学習の中で、特にDeep Learningは学習時に大量の計算を行います。一度の学習の計算を如何に早く終わらせるかは重要なポイントです。現在は機械学習の計算を行う場合には1台のサーバにGPUを大量に搭載して、内部バスでGPU間を結合して行うのが一番効率の良い計算方法です。

学習の為のデータ量が多くなるのであれば、マルチノードでの計算も考慮に入れなければなりません。マルチノードでの計算を行う場合は遅延の無いサーバ間通信が肝となってきます。GPU搭載サーバを利用してのマルチノード計算は数年前までは十分な効果が得られておりませんでしたが、最近では機械学習のライブラリ側のマルチノードに対する改良も進んで現実的な物になってきています。

ネットワンではTesorFlow等の機械学習のライブラリを用いて、シングルノード計算時のGPU数の効果の計測や、マルチノードの効果の計測も行っております。ご興味のある方は弊社担当営業までお問い合わせ戴けたらと思います。

まとめ

企業では、GPUを搭載したサーバファームを整えるのは標準的になりつつあります。ネットワンはお客様の御要望に従った、GPUを利用した最適な機械学習のインフラのご提案と構築を行っております。

次回は盛り上がりつつありサーバでのFPGA利用について解説します。

※本記事の内容は執筆者個人の見解であり、所属する組織の見解を代表するものではありません。

RECOMMEND