random - 使用QuasirandomGenerator(用于虚拟对象)

标签 random cuda numbers generator

我是CUDA的新手,正在努力在内核中生成随机数。

我知道有不同的实现,而且,在SDK 4.1中,有一个Niederreiter准随机序列生成器的示例。

我不知道从哪里开始...我有点伤心,觉得自己像个假人...

谁能请一个使用Niederreiter准随机序列生成器的简单愚蠢的示例(SKD代码示例)?我真的很感激。
例如,创建一个向量并用随机数填充(每个线程填充一个向量位置)。

先感谢您。

最佳答案

SDK中的quasirandomGenerator示例几乎可以满足您的要求,它占用一个内存区域并用准随机数填充它。

就是说,我认为您最好使用cuRAND,而不是Niederreiter,而是Sobol,而不是Niederreiter,但除非您有特定的理由偏爱后者,否则您会发现它更易于使用。有关如何使用它的示例,请查看MonteCarloCURAND示例集:

  • EstimatePiQ显示了如何在GPU内存上分配区域并用Sobol数字填充区域
  • EstimatePiInlineQ显示了如何在另一个内核
  • 中一次生成一个数字

    以P结尾的样本使用伪随机数生成器。

    关于random - 使用QuasirandomGenerator(用于虚拟对象),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9292658/

    相关文章:

    java - 使用 import java.util.Random; nextInt 和用户输入

    javascript - 使用数组进行无重复的随机非数字赋值

    c++ - 执行 CUDA 程序时出现段错误

    java - 疯狂变量、舍入数(int、double 等)

    sql - 在 Oracle 中创建前导零

    python - 加速大都会--Python中的Hastings

    python - 如何为 scikit-learn 播种随机数生成器?

    c++ - 由于 cuda 生成的文件,Cmake 重新运行

    c++ - CUDA:使用线性化 2D 共享内存的数组中所有元素的总和

    JavaScript - 显示带小数的数字