|
Article on other languages:
|
ストリーミング SIMD 拡張命令 (SSE, Streaming SIMD Extensions) は、インテルが開発したCPUのSIMD拡張命令セット、およびその拡張版の総称である。
概要SSEは、x86アーキテクチャに8本の128bitレジスタを新設し、浮動小数点演算のSIMD処理を実現したものである。4個の32bit単精度浮動小数点データを一本のレジスタに格納し、同一の命令を一括処理することが出来る。拡張命令であるため、その機能を使用するためにはSSEに対応したソースコードを作成し、プログラムをコンパイルする必要がある。 当初は主要な演算命令の処理に2クロックが必要であり、RISC系CPUに搭載されているSIMD命令やAMDの実装した3D Now!命令と比べて、最適化が煩雑で性能的なディスアドバンテージとなっていたが、Core2マイクロアーキテクチャより1クロック処理が可能な形態へと改良された。 元々はインターネット・ストリーミング SIMD 拡張命令 (Internet Streaming SIMD Extensions, ISSE)と呼ばれていたが、命令内容そのものはインターネットとは直接関係が無くマーケティング的な要素が強かったため、現在ではインターネットの文字が外され単にSSEと呼ばれるようになっている。 SSEの機能を強化したものにSSE2やSSE3、SSSE3 (Supplemental Streaming SIMD Extensions 3) がある。また、SSEは他社製品にも採用されている。 SSEPentium III にはじめて実装された。追加された命令数は70。Pentium III の開発コードネームが Katmai であったことから、KNI (Katmai New Instructions) やMMX2とも呼ばれていた。廉価製品のCeleronにおいても、その第三世代製品 Coppermine-128k よりSSEに対応している。 AMD社によるSIMD拡張命令セット、3DNow! プロフェッショナル・テクノロジは、SSEと互換性がある。 SSE2SSE2は従来のSSEに144個の新たな命令が加えられ、一度に扱えるデータの数も増加した。具体的には64ビットの倍精度浮動小数点データ及び整数演算の追加、キャッシュの制御機能の強化がなされた。 SSE2はPentium4で初めて実装された。AMD社のAMD64アーキテクチャでは、拡張命令ではなく基本命令としてSSE,SSE2が取り込まれている。 SSE3SSE3はSSE2に13個の新たな命令が加えられた。具体的にはメモリアクセス及び複素数計算の高速化、仮想CPUのスレッドの動作制御などの機能が搭載され、主に動画圧縮の処理が向上した。 SSE3の名称が発表される前はPNI(Prescott New Instructions)と呼ばれていた。Pentium4のPrescottコアで初めて実装された。 SSSE3SSSE3はSSE3に32個の新たな命令が加えられた。 Coreマイクロアーキテクチャベースのマイクロプロセッサで初めて実装された。 SSSE3と名付けられる前はMNI(Merom New Instructions; 旧称Tejas New Instructions)という名称があった。登場当初はSSE4と呼ばれると一般的には思われていた。 SSE445nm世代の Core 2 の Penryn で搭載。 54個の命令が追加になる。そのうち47個がSSE4.1、7個がSSE4.2と呼ばれる。 初期のPenrynではSSE4.1のみが実装。 SSE5AMDが2007年8月に発表した。AMDの進めるTorrenza(開発コード)アーキテクチャに従い、これまで別途プログラムを作成する必要があった内蔵GPUユニットや暗号化アクセラレータなどを、CPUコア側からシームレスに扱えるようになる。 Intel AVXMMX/SSE後継のSIMD拡張命令セット。"Sandy Bridge"から搭載予定。演算幅がSSEの2倍の256bitとなるため理論上演算性能も2倍になる。またAVXでは命令デコード性能向上のため新しい命令フォーマットが採用される。 歴史
関連項目 |
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
Mercedes Car
This site monitored by SitePinger.net