-1

を広く使用する C++ コードを調べていますboost::multi_array<double>

次のステップは、openCL を使用するようにコードを移植することです。私はopenCLにまったく慣れていないので、multi_array. またはに書き換えるべきですnested-openCL-vectornested-c-array

あなたならどうしますか?

4

1 に答える 1

0

OpenCLにはすでにライブラリが存在するようなブーストがあります。GPUベンダーの次のライブラリを確認することをお勧めします

NVIDIAのThurst:Thrustは、並列アルゴリズムとデータ構造の強力なライブラリです。Thrustは、開発者の生産性を大幅に向上させるGPUプログラミング用の柔軟で高レベルのインターフェイスを提供します。Thrustを使用すると、C ++開発者は数行のコードを記述して、GPUで高速化されたソート、スキャン、変換、および削減操作を最新のマルチコアCPUよりも桁違いに高速に実行できます。たとえば、thrust :: sortアルゴリズムは、STLおよびTBBよりも5倍から100倍速いソートパフォーマンスを提供します。

AMDが提供するMathLibrariesは、OpenCLで記述されたFFTおよびBLAS関数を含むソフトウェアライブラリであり、AMD GPUで実行するように設計されています。詳細については、http: //developer.amd.com/libraries/appmathlibs/Pages/default.aspxを参照してください。

于 2012-08-13T03:28:33.820 に答える