0

プログラムで cuFFT 関数を使用しています。Tesla k20 カードを使用しています。私の信号サイズは 16384 です。

cufftExecC2C が呼び出されたときに作成されるブロックとスレッドの数と、GPU で消費されるメモリの量は?

4

1 に答える 1

2

@harrism が示すように、nvprofを使用して実行パラメーターを検出できます。

nvprof --print-gpu-trace <your-executable>

nvidia-smiメモリについては、アプリケーションの実行中に GPU メモリ使用量を照会するために使用する、またはcudaMemGetInfoのような CUDA API 呼び出しの 1 つを使用して FFT の実行中にメモリを照会するなど、観察方法を使用することもできます。

CUDA 5.5 では、CUFFT API 呼び出しの新しいセットが導入され、メモリ ニーズの見積もりにも役立ちます。関連する API 呼び出しは次のとおりです。

cufftEstimate1d(…)
cufftEstimate2d(…)
cufftEstimate3d(…)
cufftEstimateMany(…)

これらの呼び出しは、提案された変換タイプとサイズの推定メモリ使用量を返します。

次の CUDA 5.5 RC ドキュメントを参照してください (例: Linux cuda 5.5 RC インストールの場合)。

/usr/local/cuda/doc/pdf/CUFFT_Library.pdf

特に、セクション 3.4「作業領域の CUFFT 推定サイズ」

計画を策定している場合は、見積もりの​​呼び出しに類似した次の CUDA 5.5 CUFFT APIcufftGetSize...呼び出しを使用して、サイズのより正確な見積もりを取得できます。詳細については、前述のドキュメントのセクション 3.5 を参照してください。

于 2013-07-03T13:23:49.280 に答える