5

CPU で実行できる操作の数を最大にする方法を理解しようとしています。私は単純な行列乗算プログラムを実行しており、Skylake プロセッサを使用しています。このアーキテクチャに関するフロップ情報については、ウィキペディアのページを見ていましたが、理解するのが困難です。

私の理解では、FMA 命令では 3 方向の FP 入力が許可されていますよね? そして、それらの間で加算と乗算を混在させることができます。しかし、フロートを 2 つだけ追加するとどうなりますか? 単純に1倍するだけですか?1 サイクルで 3 つのフロートを追加できますか、それとも分割されますか? skylake には単精度入力で 32 FLOP/サイクルがあることがわかりましたが、「2 つの 8 幅 FMA 命令」の意味は何ですか?

事前に説明をありがとう

4

1 に答える 1