インテル® C++ コンパイラー 16.0 ユーザー・リファレンス・ガイド
インテル® コンパイラーでは、C++ の標準的な valarray コンテナー用に、ハイパフォーマンスで特別な 1 次元 valarray 演算が用意されています。
標準の C++ の valarray テンプレートには、ハイパフォーマンス・コンピューティング向けの配列演算/ベクトル演算が含まれています。これらの演算は、並列処理などのハイパフォーマンスなハードウェア機能を活用し、パフォーマンスを最大限に引き出します。
インテルの valarray は、製品に含まれるインテル® インテグレーテッド・パフォーマンス・プリミティブ (インテル® IPP) を使用します。そのため、製品をインストールする際、インテル® IPP を選択してください。
インテルの valarray は、次の演算およびデータ型で固有プロセッサーに特化したハイパフォーマンスな代替ヘッダー <valarray> で構成されています。
演算子 |
valarray のデータ型 |
---|---|
abs、acos、acosh、asin、asinh、atan、atan2、atanh、cbrt、cdfnorm、ceil、cos、cosh、erf、erfc、erfinv、exp、expm1、floor、hypot、inv、invcbrt、invsqrt、ln、log、log10、log1p、nearbyint、pow、pow2o3、pow3o2、powx、rint、round、sin、sinh、sqrt、tan、tanh、trunk |
float、double |
add、conj、div、mul、mulbyconj、mul、sub |
Ipp32fc、Ipp64fc |
addition、subtraction、division、multiplication |
float、double |
bitwise or、and、xor |
char、short、int (すべて符号なし) |
min、max、sum |
short または符号付き int、float、double |
インテル® コンパイラーは、互換マイクロプロセッサー向けには、インテル製マイクロプロセッサー向けと同等レベルの最適化が行われない可能性があります。これには、インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルでは、インテル製ではないマイクロプロセッサーに対して、最適化の提供、機能、効果を保証していません。本製品のマイクロプロセッサー固有の最適化は、インテル製マイクロプロセッサーでの使用を目的としています。インテル® マイクロアーキテクチャーに非固有の特定の最適化は、インテル製マイクロプロセッサー向けに予約されています。この注意事項の適用対象である特定の命令セットの詳細は、該当する製品のユーザー・リファレンス・ガイドを参照してください。 改訂 #20110804 |