On a multi-processor system, you may wish to run parallel chains using
multiple jags.model
objects, each running a single chain on a
separate processor. This function returns a list of values that may
be used to initialize the random number generator of each chain.
parallel.seeds(factory, nchain)
parallel.seeds
returns a list of RNG states. Each element
is a list of length 2 with the following elements:
The name of the RNG
An integer vector giving the state of the RNG.
Name of the RNG factory to use.
Number of chains for which to initialize RNGs.
Martyn Plummer
jags.model
, section “Random number generators”,
for further details on RNG initialization;
list.factories
to find the names of available RNG
factories.
##The BaseRNG factory generates up to four distinct types of RNG. If
##more than 4 chains are requested, it will recycle the RNG types, but
##use different initial values
parallel.seeds("base::BaseRNG", 3)
## The lecuyer module provides the RngStream factory, which allows large
## numbers of independent parallel RNGs to be generated.
load.module("lecuyer")
list.factories(type="rng")
parallel.seeds("lecuyer::RngStream", 5);
Run the code above in your browser using DataLab