2018年03月26日 10時45分 ハードウェア

NVIDIAのハイエンドGPU「Titan V」は計算結果がその度に異なる気分屋すぎて技術者が悲鳴



NVIDIAのハイエンドGPU「Titan V」をシミュレーションに利用するある技術者が、計算の度に計算結果が変わるのでお手上げだと悲鳴を上げています。The Registerは「2＋2＝4、いや、4.1……やっぱり4.3」ということかと、気まぐれなTitan Vの計算ゆれ現象をからかっています。



2 + 2 = 4, er, 4.1, no, 4.3... Nvidia's Titan V GPUs spit out 'wrong answers' in scientific simulations • The Register

http://www.theregister.co.uk/2018/03/21/nvidia_titan_v_reproducibility/



NVIDIAのTitan VはVoltaアーキテクチャを採用したGPUで、5120個のCUDAコアと12GBのHBM2メモリを搭載するなど、コンシューマー向けでは最高峰のグラフィックボードです。単精度浮動小数点演算性能が13.8TFLOPS、またTensor演算性能が110TFLOPSとディープラーニング向けの設計のため、ゲーマーだけでなく機械学習など広い分野での利用が想定されています。





The Registerによると、あるエンジニアがタンパク質と酵素の相互作用のシミュレーションを実行したところ、まったく同じ条件であるにもかかわらず違う結果が現れることに気付いたとのこと。Titan Vを4枚を使って計算テストをしたところ、そのうちの2つの結果で約10％の開きが生じたそうです。この種のシミュレーションでは毎回同じ数値を出力するのが当然で、前世代PascalアーキテクチャまでのNVIDIAグラフィックボードではこのような結果にはなっていなかったと、Titan V特有の現象であると指摘しています。



NVIDIAからの干渉を警戒する匿名の技術者は、「この数学的に奇妙な問題に対応するソフトウェアパッチがリリースされるまでTitan Vの利用を避けるつもりだ」とThe Registerに語ったとのこと。なお、Titan Vはアメリカでの価格は2999ドル(約31万円)とグラフィックボードとしては高額であるため、研究用に導入したのに計算に利用できないことで大きな痛手を被っているようです。



The Registerによると、GPUに詳しい業界関係者の中にはメモリの問題だと考えている人がいるとのこと。Titan Vはオーバークロックなど性能を高める手法の中でメモリの読み取りエラーを引き起こしている可能性があるというわけです。また、そもそも設計上のエラーの可能性も指摘されています。なお、今回発見された計算結果の出力がばらつくエラーは、一般的なゲームの利用ではほとんど問題にならないものだそうです。





The RegisterはNVIDIAに対してTitan Vが異なる計算結果を出力する件について問い合わせたところ、「NVIDIAは生体分子シミューレーションソフトのAmberを使った結果、Titan Vに奇妙な影響が生じたという少なくとも1件の報告を認識しているものの、Titan Vに設計上の問題があるとは考えておらず、エラーを経験したユーザーには『[email protected]』への情報提供を求めている」と回答しています。

