Intel AVX-512
読み:インテル-エイヴィーエックス-ごひゃくじゅうに
外語:Intel Advanced Vector Extensions 512

 Intelプロセッサーの拡張命令セットで、Intel AVX2の後継仕様。
目次

概要
 元々、SSE用として追加された128ビット長XMMレジスターを倍の256ビット長に拡張したYMMレジスターを用いる、新しい命令セットとして追加されたものがIntel AVXであり、機能追加したものがIntel AVX2である。
 Intel AVX-512は、更に倍の512ビット長に拡張されたZMMレジスターを用いた、更に新しい命令セットとして追加されたものである。
 次のような拡張が施されている。
 Intel AVXがVEXプリフィックスによって命令の拡張をしたが、512ビットへの拡張やレジスター数の増加への余地がなかっため、AVX-512では更にEVEXプリフィックスを追加した。

特徴

機能
 Intel AVX-512は様々な機能を提供するが、全てのプロセッサーで全機能が実装されることを想定していない、複数の要素から構成されている。
 Intel AVX-512として全プロセッサーで対応するのはAVX512F(AVX-512 Foundation)のみで、他はオプションである。殆どはIntel Xeon Phi専用命令だが、Intel AVX-512の命令は少しずつ増え続けている。
 命令セットの構成は次のとおりである。

機能の有無判別
 EAXレジスターに7、ECXレジスターにサブリーフ番号を代入してCPUID命令を実行し、EBX:ECX:EDXレジスターに得られたフラグで判別できる。
 ECX=0でのEBXビット16のAVX512Fが1であればIntel AVX-512対応であると判断でき、更に必要な機能が搭載されているかどうかを判断してから機能を利用することになる。

再検索