< 目次

インテル® IPP 2017 デベロッパー・ガイド

インテル® IPP について

インテル® インテグレーテッド・パフォーマンス・プリミティブ (インテル® IPP) を使用すると、マルチメディア、エンタープライズ・データ、組込み、通信、科学/技術アプリケーションのパフォーマンスを向上できます。プリミティブとは、数千におよぶ一般的なアルゴリズムに共通のインターフェイスです。プリミティブを使用することで、アプリケーションを変更することなく、さまざまな世代のプロセッサー向けに自動でアプリケーションをチューニングできます。

インテル® IPP ライブラリーは、さまざまな世代のハードウェア/命令セット向けに、信号、画像、データ処理関数を提供しています。インテル® IPP で記述されたコードは、利用可能なプロセッサーの機能を自動的に利用します。これは、開発および保守において大きな節約をもたらします。複数の実行パス (インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 補足命令 (インテル® SSSE3)、インテル® アドバンスト・ベクトル・エクステンション (インテル® AVX) など) のプログラムを記述するのではなく、1 つの最適化された実行パスのプログラムを記述して、複数の世代のプロセッサーで最適なパフォーマンスを得ることができます。

インテル® IPP は、次の利点をもたらすアルゴリズム・ビルディング・ブロックを提供することを目的としています。

インテル® IPP ライブラリーは、インテル® Parallel Studio XE およびインテル® System Studio の一部としてインストールされます。また、コミュニティー・ライセンス・プログラムの下でスタンドアロン・パッケージとして提供されています。

異なる製品スイートで提供されるインテル® IPP 関数のほとんどは同じです。しかし、一部の製品パッケージにのみ含まれているインテル® IPP ライブラリーやドメインもあります。次の表は、各製品スイートで提供されるインテル® IPP の機能をまとめたものです。

インテル® IPP の機能 インテル® Parallel Studio XE インテル® System Studio インテル® IPP スタンドアロン
一般的な関数ドメイン (ストリング操作、暗号化、コンピューター・ビジョン、データ圧縮、画像処理、信号処理など)
組込みドメイン用の LTE (Long Term Evolution) 関数 X X
Android™ プラットフォームおよびインテル® Quark™ プロセッサー・ベースのプラットフォーム用のインテル® IPP ライブラリー X X
インテル® Xeon Phi™ コプロセッサー用のインテル® IPP ライブラリー X
OS X* 用のインテル® IPP ライブラリー X

最適化に関する注意事項

インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。

注意事項の改訂 #20110804