curand, thrust::random

curand, thrust::random

本文关键字:random thrust curand      更新时间:2023-10-16

我想在.cu格式的文件中使用drand48获得随机统一数,为什么我总是给我3.90799e-14这个值

我的代码在ran_uuniform_test.cu 中

#include <iostream>
int main( int argc, char** argv) 
{ 
    std::cout<<drand48()<<"n"; 
    return 0;
}

在使用drand48:之前,您应该调用srand48(或seed48lcong48

srand48()、seed48()和lcong48(。(尽管不建议这样做,但如果在没有事先调用初始化入口点的情况下调用drand48()、lrand48()或mrand48(erand48()、nrand48()和jrand48(()函数不需要首先调用初始化入口点。

像这样使用:

#include <iostream>
#include <ctime>
#include <cstdlib>
int main(int argc, char *argv[])
{
    // A common random seed strategy is to use the current time
    srand48(time(NULL));
    std::cout << drand48() << std::endl;
    std::cout << drand48() << std::endl;
    std::cout << drand48() << std::endl;
    std::cout << drand48() << std::endl;
    return 0;
}