Pentiumの違い

MMX PentiumとPentiumの違い(L1キャッシュ容量の違い以外)を教えてください。



MMX Pentium(P55C)とPentium(P54C)は共通のソケット(Socket7)を採用,L1キャッシュがMMX Pentiumでは32KBと倍増している以外にもいくつかの相違点があります。まず名称のとおりMMX Pentiumはマルチメディア対応をうたったMMXテクノロジーに対応しており,専用のMMX命令が追加されることで整数演算が強化されています。整数演算の強化は64ビットレジスタを分割して複数のレジスタとして用いることで,複数の整数演算の同時実行を可能にしており,波形合成,変換や画像合成,変換といった処理の高速化が実現できます。ただ3D描画では浮動小数点演算が多用されるため,MMX機能の有効性は低いとされています。
 次に分岐予測機能の強化が挙げられます。これはMMX Pentium登場時にすでに存在したPentium Proの技術を応用したもので,より高度な分岐予測を行うことで処理の高速化が実現されています。また,パイプラインや書き込みバッファも強化されています。
 Pentiumは3.3〜3.45Vの動作電圧でしたが,MMX Pentiumは2.9Vとより低い電圧で動作するように設計されているため(ただしI/O部は従来どおり3.3V),消費電力が小さくなり発熱も抑えられています。
 これらの点を除けばMMX PentiumとPentiumはほぼ同じものと考えてよいでしょう。そもそもMMX Pentiumが登場した背景には,Pentium Proへの移行がインテルの思惑どおりに進まなかった(Pentium Proはセグメント処理を含む16ビットコードの実行が遅く,多くの16ビットコードを含むWindows 95での処理速度がかんばしくなかった)点があり,かなり急場しのぎで開発されたのではといわれています。このため大幅な改良は行わず,製造プロセスの向上で可能になったL1キャッシュの増大や低電圧化,新機能(MMX)の追加やPentium Proの技術の応用というアプローチが取られたものと思われます。
 一般にMMX Pentiumは同クロックのPentiumよりも高速(MMX Pentium/166MHzがPentium/200MHz相当)とされていますが,L1キャッシュが16KBから32KBへ倍増された点が最も大きな理由のようです。
(坪山博貴)

CPU L1キャッシュ コア電圧 主な強化点
Pentium(P54C) 16KB 3.3〜3.45V
MMX Pentium(P55C) 32KB 2.9V MMX命令,分岐予測,パイプライン,
書き込みバッファ