[Numpy-discussion] reseed random generator (1.19)

Robert Kern robert.kern at gmail.com
Sat Jul 4 14:41:17 EDT 2020


On Sat, Jul 4, 2020, 2:39 PM Neal Becker <ndbecker2 at gmail.com> wrote:

>
>
> On Sat, Jul 4, 2020 at 1:56 PM Robert Kern <robert.kern at gmail.com> wrote:
> ....
>
>>
>> 3. Is there a way of telling the number of draws a generator did?
>>>
>>> The use case is to checkpoint the number of draws and `.advance` the
>>> bit generator when resuming from the checkpoint. (The runs are longer
>>> then the batch queue limits).
>>>
>>
>> There are computations you can do on the internal state of PCG64 and
>> Philox to get this information, but not in general, no. I do recommend
>> serializing the Generator or BitGenerator (or at least the BitGenerator's
>> .state property, which is a nice JSONable dict for PCG64) for checkpointing
>> purposes. Among other things, there is a cached uint32 for when odd numbers
>> of uint32s are drawn that you might need to handle. The state of the
>> default PCG64 is much smaller than MT19937. It's less work and more
>> reliable than computing that distance and storing the original seed and the
>> distance.
>>
>> --
>> Robert Kern
>>
>
> Sorry, you lost me here.  If I want to save, restore the state of a
> generator, can I use pickle/unpickle?
>

Absolutely.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20200704/c239a13b/attachment-0001.html>


More information about the NumPy-Discussion mailing list