Ryzen Zen3 の vfpbench 結果

Zen4 と順序が逆になりましたが Zen3 の結果も手に入れることができました。モバイル向け APU、Ryzen 5 5560U です。

実行ユニットは Zen2 同様 256bit の乗算(積和) x2 + 加算 x2 の構成です。そのため単純な fma 換算ではピーク値が Zen2 と変わらない fma x2 となるのですが、Zen3 の場合少々結果が異なります。

AVX vmulps (32bit x8) n8          :    0.172    64245.3     8030.7  (  8.0 3.5)
AVX vaddps (32bit x8) n8          :    0.172    64267.0     8033.4  (  8.0 3.5)
AVX vmul+addps (32bit x8) n8      :    0.086   128217.7    16027.2  (  8.0 7.0)
FMA vfmaddps (32bit x8) n8        :    0.214   103087.1     6442.9  ( 16.0 2.8)
FMA vfmaddps (32bit x8) n12       :    0.275   120290.1     7518.1  ( 16.0 3.3)
FMA vfma+mlps (32bit x8) n12      :    0.258    96422.6     8035.2  ( 12.0 3.5)
FMA vfma+adps (32bit x8) n12      :    0.172   144552.0    12046.0  ( 12.0 5.2)
AVX vml+ad+adps (32bit x8) n9     :    0.244    50965.1     6370.6  (  8.0 2.8)

fma x2 よりも fma + add の方が値が高くなっており、fma x 2 に加えて add も十分なスループットで回っているように見えます。ピーク値も追加の add 命令の分だけ上昇しています。パイプライン構成自体は大きく変わらないものの、Zen2 より命令発行数と実行効率が向上し、演算性能が上がっている事がわかります。

Zen4 の場合はこれに加えてさらに AVX512 にも対応します。fma だけ見ると違いがないように見えるかもしれませんが、世代毎に演算能力は上がっています。

関連エントリ