AMD "Zen" Does Support FMA4, Just Not Exposed(techPowerUp!)
“Zen” CPUマイクロアーキテクチャにおいてAMDは書類上はFMA4のサポートを打ち切っている(FMA3をサポートしている)。しかし、Level1Techsによると、“Zen”のハードウェアそのものはFMA4命令に対応しており、OSからは命令が見えないようにされているという。FMA(Fused Multiply Add)は積和算を効率的に演算するためのセットである。またSSE3, SSE4とはことなりFMA3とFMA4の“3”と“4”は世代を表すものではなく、命令あたりのオペランド数を示すものである。AMDは2012年の“Bulldozer”でFMA4を実装し、Intelは2013年に“Haswell”でFMA3を実装した。
“Zen” CPUマイクロアーキテクチャにおいてAMDは書類上はFMA4のサポートを打ち切っている(FMA3をサポートしている)。しかし、Level1Techsによると、“Zen”のハードウェアそのものはFMA4命令に対応しており、OSからは命令が見えないようにされているという。FMA(Fused Multiply Add)は積和算を効率的に演算するためのセットである。またSSE3, SSE4とはことなりFMA3とFMA4の“3”と“4”は世代を表すものではなく、命令あたりのオペランド数を示すものである。AMDは2012年の“Bulldozer”でFMA4を実装し、Intelは2013年に“Haswell”でFMA3を実装した。
AMDが“Zen”でFMA4を非推奨扱いとした理由にすいては不明だが、とある開発者はAMDのFMA4はより高いスループットが得られるものの、バグが多かったという。また、Intelが採用したFMA3の方がより一般的とであり、ここ数年でより安定したものとなっている。
実際にLevel1Techsが“Zen”でFMA4を使用したところ、“illegal instruction”エラーを返すこともなく、演算を完遂した模様。表向きは“Zen”はFMA4をサポートせず、CPU IDでも出てくることはないが、動かそうと思えば動かせるようである。なお、現在ではFMA3の方が主流のようで、“Zen”もFMA3をサポートしている(AMD CPUでのFMA3のサポートは“Piledriver”と“Kabini”から)。
FMA4が残っている理由は不明であるが、Ryzen発表当時の記事を見ると、打ち切り扱いになっており、今後日の目を見る可能性は低そうである

この記事のトラックバックURL
https://northwood.blog.fc2.com/tb.php/9548-730fd771
この記事にトラックバックする(FC2ブログユーザー)
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック