問題タブ [cufft]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cuda - デバイス関数で cufft ライブラリ呼び出しを呼び出すことは可能ですか?
ホスト コードで cuFFT ライブラリ呼び出しを使用すると正常に動作しますが、カーネルから cuFFT ライブラリを呼び出したいと考えています。CUDA の以前のバージョンにはこの種のサポートがありませんでしたが、動的並列処理ではこれが可能ですか?
これを達成する方法の例があれば素晴らしいでしょう。
cuda - CUFFT | 簡単な例を理解できない
基本的な CUFFT の例を適切に動作させようとして、私は一日中苦労していました。しかし、特定できない小さな問題に遭遇しました。基本的に、x 座標と y 座標を持つ線形 2D 配列 vx があります。次に、順方向、次に逆方向の CUFFT (インプレース) を計算するだけです。次に、配列 vx をコピーして戻し、NX*NYで正規化してから表示します。
vx が cos(x) または sin(x) として定義されている場合は問題なく動作しますが、sin(y) または cos(y) を使用すると正しい関数 (sin または cos) が返されますが、半分の振幅 (つまりつまり、1 と -1 ではなく 0.5 と -0.5 の間で振動します) ! sin(2*y) または cos(2*y) (または sin(4*y), cos(4*y), ...) を使用すると問題なく動作することに注意してください。何か案が?
cuda - 1d cuFFT の実行時間の評価
コードスニペット
cuFFT が計画を作成するのに必要な時間と実行時間の両方を測定します。
計画の作成に必要な時間を含めずに、実行時間のみを測定するにはどうすればよいですか?
cuda - 2D相関を高速化
私のアプリケーションは(i)FFT境界になり始めているようで、平均サイズが約500x200(幅と高さは常に偶数)の長方形に対して多くの2D相関を行っています。シナリオはいつものとおりです。2 つの FFT (フィールドごとに 1 つ) を実行し、複素数フィールドを乗算してから、iFFT を 1 つ実行します。
そのため、CPU (Intel Q6600、JTransforms libraly を使用) では、プロファイラーによると FFT 変換は約 70% の時間を消費し、GPU (GTX670、cuFFT ライブラリー) では約 50% (つまり、CUDA ではパフォーマンスがいくらか向上しますが、私が欲しいもの)。GPUが完全に飽和していない(帯域幅が制限されている)可能性があることを認識していますが、他のケースから-バッチで計算を行うとアプリケーションの複雑さが大幅に増加します。
質問:
- FFT に費やす時間を少なくとも数回減らすためにさらに何ができるでしょうか?
- FFTW ライブラリを試す必要がありますか (現時点では、JTransforms と比較して大幅に向上するかどうかはわかりません)。
- FFT 変換のために PC に接続できる特殊なハードウェアはありますか?