8.9倍速い程度ではGPUにCPUが叶うことはありません。
アーキテクチャの最適化がない状態では話になりません。
計算機は4bit, 8bit, 16bit, 32bit, 64bitという流れで拡張されてきました。計算機の歴史において、科学計算の精度を上げるためには高桁数の浮動小数点を扱う必要があると長年考えられてきました。8bitから16bitに進化した後、高桁の浮動小数を計算するのには時間がかかり過ぎる問題に直面していたため、32bit floatを高速処理するための専用回路を発明しました。その結果は長らく32bitが主流となり、2015年まではこれが主流となりました。
しかし、DeepLearningの登場で、32bitはメモリが肥大化し過ぎて大きなノード数を確保できなくなることや、bitを落としても精度の劣化は非常に小さい事がわかったため、16bit floatが計算に使われるようになりました。half floatと呼ばれるようになった16bit floatで作られたモデルは、実測値で32bit floatモデルよりも速度が非常に遅いという結果になりました。想定外の結果ですが驚くことではありません。これはhalf floatに対する専用回路が存在しなかったためです。そこで2015年以降のハードウェア設計では16bit float専用回路を搭載したものが登場し、大規模モデル、高速処理、省エネに大きく貢献しました。
DeepLearningモデルの精度はどの程度までbitを落としてもよいのか?を研究する人が増えました。すぐに2
値化、つまり1bitモデル(バイナリモデル)が作られましたが、精度は明らかに悪化しました。浮動小数の計算より整数の計算のほうが圧倒的に速いため、int型のモデルの検証も進みました。4bit intも精度vs速度では非常に有益である事がわかったため、ハードウェアは4bit int専用回路も製作されることになりました。
これが今日までのハードウェアアーキテクチャの進化の歴史です。
1bitが有益であれば将来のアーキテクチャで対応されるでしょう。