問題タブ [curand]

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.

0 投票する
2 に答える
482 参照

random - 任意の数のスレッドに対する CUDA の Mersenne Twister

Mersenne Twister( MT) 乱数ジェネレーターの CUDA の実装は、スレッド/ブロック256および200ブロック/グリッドの最大数に制限されています。つまり、スレッドの最大数は です51200

そのため、MT を使用するカーネルを で起動することはできません。

どこ

およびnはスレッドの総数です。

MTforを使用する最良の方法は何threads > 51200ですか?

blocksPerGridとに定数値を使用する場合の私のアプローチthreadsPerBlock、たとえば<<<128,128>>>、カーネルコードで次を使用します。

これが正しい方法なのか、MT のステータスに望ましくない影響を与える可能性があるのか​​、よくわかりません。

ありがとうございました。

0 投票する
1 に答える
349 参照

cuda - cuRAND カーネルの乱数ジェネレーターのタイプ

CUDA または pyCUDA での乱数生成の典型的な例は、質問How to generate random number inside pyCUDA kernel?で報告されています。、すなわち

この古典的な例を使用すると、起動される乱数発生器 ( XORWOWMTGP32、その他) は何ですか?

カーネル内から乱数ジェネレーターを変更するにはどうすればよいですか?

0 投票する
1 に答える
907 参照

cuda - 「thrust::system::system_error」のインスタンスをスローした後に呼び出された終了 what(): parallel_for が失敗しました: cudaErrorInvalidValue: 無効な引数

curand_uniform() が 1.0 を返す回数を数えようとしています。ただし、次のコードが機能するようには見えません。

端末エラーが発生します (Linux の場合):

そして、私はこのようにコンパイルしています:

このエラー メッセージがわかりません。