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

インテル® IPP Cryptography について

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

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

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

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

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

インテル® IPP Cryptography の機能 インテル® Parallel Studio XE インテル® System Studio インテル® IPP Cryptography スタンドアロン
Cryptography 関数ドメイン
Android* プラットフォームおよびインテル® Quark™ プロセッサー・ベースのプラットフォーム用のインテル® IPP ライブラリー × ×
macOS* 用のインテル® IPP ライブラリー ×

最適化に関する注意事項

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

注意事項の改訂 #20110804