密かに増え続けるIntel AVX-512命令セット群……

暫く調べていない間に、Intel AVX512系の命令セットがいくつか更新されていた。主にサーバーやスケーラブルサーバー向けに機械学習(ML)や深層学習(DL)向けの命令が追加されているようだ。

14nmのプロセスノードからノード拡張が出来ずに苦しんでいた間、少なくともサーバー向けのSP/EX/EP製品群だけでも今の時代に合わせた性能アップを目指した結果が殆ど改良せずに僅かな変更だけで対応出来る命令セットの強化に向かったのだろう。予定では10nmで実装されるはずの命令セットが14nmで実装されているあたり、殆どはマイクロコード側だけで出来る事をやったようにも見える。

と言うわけで、以前作った表を更新した。

AVX2019.png

世代番号の( )書きは、インテルの公称ではない。当初予定されていたプロセス世代交代のタイミングなどに合わせて、メジャーアップする形に3.0~3.2まではその昔にそういう情報があったものを使っているが、今は使われていないようだ。灰色に網掛けしたXeon Phiの影響で命令セットの採用にばらつきが出たためだと思われる。

新たに追加された命令セットは、
Vector Neural Network Instructionsという4VNNIの廉価版のような命令セットと、
brain float(ing Point) 16(-bit)というML/DL用の命令セット
そして、
Vector Pair Intersection to a Pair of Mask Registers
というキャッシュレジスタ内での交差処理(入れ替えなど)を制御する命令セット群となり、これらはML/DLでの処理性能向上を狙った物と言える。

ラーニング系(AI系)の処理は、開発する人でなければ、基本的に表向きというより裏で動く処理なので、恩恵があるのかないのかなどあまり分からないものだろう。大抵の人はその性能アップがあるハードとそうでないハードで差は感じない(感じにくい)程度に裏方だ。これらの処理は、だいたいバックグラウンドで能力の許す範囲の処理で行われるからだ。もちろん、そういうプログラムをしている人は別だが……。

そのため、別に知らなくてもよい程度の命令セットである。何せ、CPUでやらなくてもnVIDIAのRTXビデオカードなどが載っているなら、Tensor Core(テンソルコア)でそれをやった方が早い。小規模コアを大量に載せているGPUの方がこの手の機械学習では並列でのメリットが大きいのだ。ただし、スケーラブルサーバーや大規模サーバーだとCPUソケットやコア数が多くなるため、電力性能が良いかどうかは別としてアプリケーションの互換性も考慮すればそれなりの性能が出てくる。だから、採用してきたわけだ。

ただ、今後も続くかは不透明だ。今、Intelは次世代GPUであるXeを開発しているため、作った以上廃止はしない(互換性のためにも残して使い分ける)だろうが、比率を最終的にそっちにこれらを移動させる可能性は大いにある。その方が、電力性能は確実に良くなるからだ。




ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント