2012-05-10 8 views
0

私はCUDA GPUコンピューティングSDKとCUDAコンピューティングツールキットを4.1にアップグレードしました。私はsimpleStreamsプログラムをテストしていましたが、一貫して非ストリームの実行に時間がかかります。私のデバイスは、コンピューティング機能2.1と私はVS2008、Windows OSを使用しています。cuda sdk SDK 4.1のsimpleStreamsが動作しない

+0

どのバージョンのウィンドウですか? – talonmies

+0

Windows 7とCUDAドライバは現時点で入手可能です –

+0

私はWindowsが問題の一部であることを確認します。私は2つのGPU(8800GTSとGTX660)で、Win8の32ビットとUbuntuの12.04の32ビットを私のデスクトップに並べてインストールしました。サンプルはUbuntu上で完全に実行されます(トレースはmemCopyとカーネルの明確なオーバーラップを示します)が、Win8では重複しません。 –

答えて

1

私はCudaの新機能ですので、コードを投稿しなくても手伝っても大丈夫です。投稿が不可能な場合は、Nvidia's visual profilerをご覧ください。そのクロスプラットフォームは、ボトルネックがあったことを示すことができます。

+0

私はexamplesディレクトリから実行しようとしています。私のコードではありません.i新しいコードにいくつかのバグがあると思います。 –

+0

コードのドキュメントをチェックしてください。私はどのような例のディレクトリを使用していますが、 'cuda by example'の本に含まれていたものは、CPUバージョンとGPUバージョンを含むコードを持っていたのでしょうか? – Lostsoul

+0

srcフォルダにはありません。私はsimpleStreamsの例を実行しています...ストリームされたバージョンはストリームされていないバージョンよりも時間がかかります、なぜそれが起こっているのか分かりませんか? –

1

このサンプルには常に問題があります。サンプルを微調整してカーネルとメモリのコピーの長さを同じにすると、オーバーラップが改善されます。通常、最初の提出の幅は並行性の方が優れています。ただし、WDDM OSでは、カーネルの起動直後にメモリコピーを発行すると、このサンプルは通常はより重複します。

1

これも気づいた。私はそれが私のことだと思っていましたが、私は改善に気付かず、フォーラムの検索を試みましたが、他の誰かを見つけられませんでした。

私はCuda By Exampleの本でもソースコードを実行しました(これは本当に役に立ちます.GPUプログラミングについて真剣に考えているなら、それを選ぶことをお勧めします)。

第10章の例では、ストリームの使用方法を示す例の進行状況を示しています。 http://developer.nvidia.com/content/cuda-example-introduction-general-purpose-gpu-programming-0

しかし、比較、(基本的には単一ストリームのバージョンである) 1.非ストリーミングバージョン 2.(正しくasyncmemcpyとカーネルをストリーミングキューに入れられた 3.ストリーミング(間違っasyncmemcpyとカーネルの起動をキューに入れられました)起動)

私はcudaストリームの使用に利点がないとわかります。勝利の眺めがcudaストリームを正しくサポートしていなかったことを議論しているオンラインソースがいくつか見つかりましたので、win7の問題かもしれません。

リンク先の例で見つけたものを教えてください。私の設定はWin7 64bit Pro、Cuda 4.1、Dual Geforce GTX460カード、8GB RAMです。

+0

私はそれがWin7の問題かもしれないとは考えていませんでしたが、私はLinux上でそれをチェックさせてください –

関連する問題