I am currently revisiting this but having some problems with the
random number generator.
generator.generators_per_block is 512 on my card, so I initialize 512
generators, but I see that some of them don't produce random numbers
when sampling from them. I notice that in some subtle ways (mainly
that the distribution is not correct or all numbers are the same) if I
sample from more than 300-350 generators (always the last ones are
affected), but it's fine when using e.g. 128. So it seems I can only
use a smaller number of generators than what the card says I should be
able to use.
Any idea on why that might be or how to investigate this further?
On Thu, Jan 12, 2012 at 3:44 PM, Tomasz Rybak <tomasz.rybak(a)post.pl> wrote:
On Sun, 2011-12-18 at 20:25 +0100, Thomas Wiecki
I think it just allocates the maximum number.
Previously I wondered
how I could find this maximum number, it is stored in
generator.generators_per_block (=512 on my card).
It generates as many for each multiprocessor.
In line 413 of curandom.py code allocates generators_per_block
times block_count generators. block_count variable is set
in line 349, getting number of multiprocessors.
More wide note - do you see something that can be added to documentation
or classes? They were written assuming simple use case (generating
array of random numbers) so if you can propose some other use
cases I think we can discuss it here and add this functionality.
Tomasz Rybak GPG/PGP key ID: 2AD5 9860
Fingerprint A481 824E 7DD3 9C0E C40A 488E C654 FB33 2AD5 9860