3

CUDA で N バウンスを使用してレイトレーサーを実行します (各レイは N 回バウンスします)。

openGL を使用して結果を表示します。

N が小さい (1~4) と、すべてうまくいきます。Nを大きくすると(〜10)、各スレッド(約800x1000)が多くの計算を行う必要があり、これは画面が黒くなり、元に戻ると、nvidiaがクラッシュすることに注意してください。

私はオンラインで検索し、ディスプレイとコンピューティングに同じグラフィックカードを使用しているため、ウォッチドッグタイマーのようなものを引き起こしていると考えています(コンピューティングには2秒以上かかるため、ドライバーが自動的にリセットされます)。

ホスト(cpu)にデバイス(gpu)を待機させるコマンドはありますか?

私は何をする必要がありますか?私は立ち往生しています:(

ありがとう

4

1 に答える 1

4

あなたの説明に基づいて、あなたは Windows Vista または Windows 7 で実行しています。ご想像のとおり、Windows オペレーティング システムにはウォッチドッグ タイマーがあります。ウォッチドッグ タイマーは、ディスプレイが接続された GPU にのみ適用されます。

最も簡単な解決策は、2 つ以上の GPU を実行し、ディスプレイを接続せずに GPU で CUDA を実行することです。

ウォッチドッグ タイマーを無効にすることができます。詳細については、この質問を参照してください。ただし、これは慎重に行う必要があります。プライマリ ディスプレイ GPU でカーネルを長時間実行している場合、カーネルが完了するまで、コンピューターが完全に応答しなくなることを覚えておいてください (少なくとも、何を行っているかを確認することはできません)。

于 2012-04-22T23:01:31.910 に答える