インテルの valarray の実装

インテル® oneAPI DPC++/C++ コンパイラーでは、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

製品および性能に関する情報

性能は、使用状況、構成、その他の要因によって異なります。詳細については、http://www.intel.com/PerformanceIndex/ (英語) を参照してください。

注意事項の改訂 #20201201