0. この投稿の概要
- 「GPUを支える技術」を読んで学んだことをまとめました。2021年に出た増補改訂版の内容です。進化の激しい分野なので、読まれる場合は改訂版を手に取ることをおすすめします。
1. 学んだこと
ハードウェア
- 並列処理の方式: 同じ命令を多数のスレッドで並列実行するような動きをするSIMT方式が主流。データ並列度は使っていないため、依存関係のない命令を集めたり、データのサイズを演算器の数に合わせたりしなくても効率を高めやすい。
- 精度の問題: 科学技術計算では64bitの倍精度浮動小数点も必要とされているが、ディープラーニングの推論ではそれほどの精度は必要なく、16bitの半精度浮動小数点や場合によっては8bitの固定小数点で計算しても結果に影響はない。参考: How to Quantize Neural Networks with TensorFlow « Pete Warden's blog
- ベンチマーク: ディープラーニングを実行する場合の性能のベンチマークとしてMLPerfが開発されている。