インテル® ストリーミング SIMD 拡張命令 (インテル® SSE)技術

ドキュメント

製品情報 & ドキュメント

000005779

2018/09/10

インテル® ストリーミング SIMD 拡張命令 (インテル® SSE) とは何ですか?

命令セット拡張は、複数のデータオブジェクトに対して同じ操作が実行されたときにパフォーマンスを向上させる追加の命令です。インテル® アーキテクチャー ・インストラクション・セット・エクステンションのプログラミングリファレンス を参照してください。

命令セット拡張には次のものがあります。

  • 単一命令複数データ (SIMD)
  • インテル® ストリーミング SIMD 拡張命令 (インテル® SSE)(インテル® SSE、インテル® SSE2、インテル® インテル® SSE3、インテル® SSE4)
  • インテル®アドバンスベクタエクステンション (インテル® AVX、インテル® AVX2、インテル® AVX-512)

インテル® ストリーミング SIMD 拡張命令 (インテル® SSE) SSE

SSE は、単一命令の複数のデータを可能にするプロセッサ技術です。古いプロセッサは、命令ごとに1つのデータ要素のみを処理します。SSE は、命令が複数のデータ要素を処理できるようにします。これは、高速処理のための3d グラフィックスなどの集中的なアプリケーションで使用されています。

SSE はMMX™ テクノロジー を置き換えるように設計されています。これは、SSE2、SSE3/SSE3S、および SSE4 を含むように、インテル®プロセッサーの世代にわたって拡張されました。各イテレーションは、新しい命令とパフォーマンスの向上をもたらしました。

インテル® ストリーミング SIMD 拡張命令 (インテル® SSE) 2 (SSE2)

SSE2 は、幅広いアプリケーションにわたってパフォーマンスが向上する144の命令を追加し、 MMX™ テクノロジー と SSE テクノロジを拡張しています。MMX™ テクノロジー で導入された SIMD 整数命令は、64から128ビットに拡張します。これにより、SIMD 整数型演算の実効実行速度が2倍になります。

倍精度浮動小数点 simd 命令は、simd 形式で2つの浮動小数点演算を同時に実行できるようにします。この倍精度の操作をサポートすることで、コンテンツの作成、財務、エンジニアリング、および科学的なアプリケーションの迅速化に役立ちます。

元の SSE 命令は、柔軟で高ダイナミックレンジの計算力をサポートするように強化されています。これは、複数のデータ型に対する算術演算をサポートすることによって行われます。例として、ダブルワードとクワッドワードがあります。SSE2 命令により、ソフトウェア開発者は最大限の柔軟性を実現MPEG-2、MP3、3d グラフィックスなどのソフトウェアを実行するときに、アルゴリズムを実装し、パフォーマンスを向上させることができます。

インテル® ストリーミング SIMD 拡張命令 (インテル® SSE) 3 (SSE3)

90 nm プロセスベースのインテル® Pentium® 4 プロセッサー の発売により、SSE2 よりも13以上の simd 命令を含むインテル® ストリーミング SIMD 拡張命令 (インテル® SSE) 3 (SSE3) が導入されました。13の新しい命令は、主にスレッドの同期とメディアやゲームなどの特定のアプリケーション領域を改善するために設計されています。

インテル® ストリーミング SIMD 拡張命令 (インテル® SSE) 4 (SSE4)

SSE4 は54の命令で構成されます。47の命令で構成されるサブセットは、Intel ドキュメントの sse 4.1 と呼ばれ、Penryn で入手できます。sse 4.2 は、残りの7つの命令で構成される2番目のサブセットで、Nehalem ベースのインテル® Core™ i7 プロセッサー で最初に利用できます。インテルは、命令セットの開発における開発者からのフィードバックをクレジットします。

インテル® アドバンスト・ベクトル・エクステンション(インテル® AVX)

インテル® AVX は、浮動小数点数 (FP) の集中的なアプリケーション用に設計されたインテル® SSE に256ビット命令セット拡張機能です。Intel AVX は、より広いベクトル、新しい拡張可能な構文、およびリッチ機能により、パフォーマンスを向上させます。Intel AVX2 は2013にリリースされ、浮動小数点数および整数のデータドメインにわたってベクタ処理機能を拡張しました。その結果、幅広いアプリケーションにわたって、より高いパフォーマンスと効率的なデータ管理が実現します。例としては、画像と音声/ビデオ処理、科学シミュレーション、財務分析、3d モデリングと分析があります。

インテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512)

インテル® AVX-512 は、 IntelAVX/AVX2 が1つの命令で処理できるデータ要素の数の2倍の処理と、intel SSE の4倍の機能を可能にします。Intel AVX-512 命令は、最も要求の厳しい計算タスクに対してより高いパフォーマンス機能を開くため、重要です。Intel AVX-512 命令は命令機能の設計のコンパイラサポートの最高度を提供する。