Top / CPU / MMX

MMX

MMX は、Intel 社が開発したマルチメディアに特化した新しい命令群です。

特徴としては以下の通り。

  • 64-bit レジスタによる SIND 整数演算
    MMX は 64-bit のレジスタを使用します。この 64-bit を 8-bit/16-bit/32-bit に分割し、各々演算させることで 1 命令辺りの処理数を増やします。例えば 32-bit レジスタの場合、1 命令に対し 2 処理をこなす事が出来ますし、8-bit の場合、1 命令に対し 8 処理分こなす事が出来ます。
    一度の演算に対し、複数の処理をこなす手法を SIMD(Single Instruction Multiple Data)と言います。マルチメディア系の演算は同じ命令を多用することが多いので SIMD によるパフォーマンス向上が期待されます。元々この技術は DSP で多用されていた手法だそうです。
  • 新たに 57 個の命令を追加
    x86 系の命令に対し、新たに 57 個の命令を追加しています。MMX をサポートしていない CPU で MMX 命令を実行した場合、一般保護エラーが発生しますので、MMX 命令を実行する前に、CPU が MMX をサポートしているか確認する必要があります。
  • 浮動小数点演算用のレジスタを流用
    MMX のレジスタは浮動小数点演算のレジスタを流用しています。よって、MMX 演算と浮動小数点演算を併用する場合、タスク切り替え等によるパフォーマンス低下が指摘されています。
    この辺の実装は AMD 社の CPU では状況が少し違うようです。
  • MMX Pentium/Pentium II より採用
    Pentium II 以降の Intel 社 CPU では MMX を実装しつづけています。

関連情報

用語


Last-modified: 2005.09.19 (月) 03:19:12 (6794d)