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? Thanks, Thomas On Thu, Jan 12, 2012 at 3:44 PM, Tomasz Rybak <tomasz.ry...@post.pl> wrote: > On Sun, 2011-12-18 at 20:25 +0100, Thomas Wiecki wrote: >> 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. > > Best regards. > > -- > Tomasz Rybak GPG/PGP key ID: 2AD5 9860 > Fingerprint A481 824E 7DD3 9C0E C40A 488E C654 FB33 2AD5 9860 > http://member.acm.org/~tomaszrybak > _______________________________________________ PyCUDA mailing list PyCUDA@tiker.net http://lists.tiker.net/listinfo/pycuda