I’m trying to use curand by following the sample code in EstimatePiInlineQ, but I’d like to do the curand_init on each thread without storing the states in the global memory as it is done in the sample. However, that does not seem to work as I get a Runtime API error. When I do the same thing with XORWOW instead of Sobol, it runs.
Here is the code
int dimension = 0; int tid = the_thread_id; curandStateSobol32_t rngstate; curand_init(d_rngDirections[dimension], tid, &rngstate); // d_rngDirections contains the direction vectors float gaussian = curand_uniform(&rngstate);