#topicpath ----- *MMX [#o8d85978] 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 に対応しているか確認する必要があります。 x86 系の命令に対し、新たに 57 個の命令を追加しています。MMX をサポートしていない CPU で MMX 命令を実行した場合、一般保護エラーが発生しますので、MMX 命令を実行する前に、CPU が MMX をサポートしているか確認する必要があります。 -''浮動小数点演算用のレジスタを流用''~ MMX のレジスタは浮動小数点演算のレジスタを流用しています。よって、MMX 演算と浮動小数点演算を併用する場合、タスク切り替え等によるパフォーマンス低下が指摘されています。~ この辺の実装は AMD 社の CPU では状況が少し違うようです。 -''MMX Pentium/Pentium II より採用''~ Pentium II 以降の Intel 社 CPU では MMX を実装しつづけています。 *関連情報 [#x7bef771] **用語 [#k703000b] -[[wikipedia:MMX]] -[[en.wikipedia:MMX]] -[[wikipedia:SIMD]] -[[Insider's Computer Dictionary [MMX]:http://www.atmarkit.co.jp/icd/root/65/390991665.html]] (@IT) -[[MMX:http://www.watch.impress.co.jp/pc/docs/article/980120/key14.htm#mmx]] ([[鈴木直美の「PC Watch先週のキーワード」:http://pc.watch.impress.co.jp/docs/article/backno/keyword.htm]]) -[[e-Words:MMX]]