MCPcopy Create free account
hub / github.com/Meshcapade/difflocks / SimpleRandom

Method SimpleRandom

extensions/include/cuMat/src/SimpleRandom.h:192–204  ·  view source on GitHub ↗

* \brief Creates a new random-number generator using the specified seed * \param seed the seed */

Source from the content-addressed store, hash-verified

190 * \param seed the seed
191 */
192 SimpleRandom(unsigned int seed)
193 : state_(numStates)
194 {
195 std::default_random_engine rnd(seed);
196 std::uniform_int_distribution<internal::kernels::state_t> distr;
197 std::vector<unsigned long long> v(numStates);
198 for (size_t i=0; i<numStates; ++i)
199 {
200 v[i] = distr(rnd);
201 }
202 CUMAT_SAFE_CALL(cudaMemcpyAsync(state_.pointer(), v.data(),
203 numStates * sizeof(internal::kernels::state_t), cudaMemcpyHostToDevice, Context::current().stream()));
204 }
205
206 /**
207 * \brief Creates a new random number generator using the current time as seed.

Callers

nothing calls this directly

Calls 2

streamMethod · 0.80
dataMethod · 0.45

Tested by

no test coverage detected