Produce Reproducible Seeds for Parallel Random Number Generation
Source:R/make_rng_seeds.R
make_rng_seeds.RdProduce Reproducible Seeds for Parallel Random Number Generation
Value
Returns a non-named list of count independent
L'Ecuyer-CMRG random seeds.
If seed is NULL or FALSE, then NULL is returned.
Details
This function generates count independent
L'Ecuyer-CMRG random seeds that can be used as
.Random.seed for parallel processing. These seeds are produced with
help of parallel::nextRNGSubStream() and
parallel::nextRNGStream() using a strategy that
seed <- <initial RNG seed>
for (ii in seq_len(count)) {
seeds[[ii]] <- parallel::nextRNGSubStream(seed)
seed <- parallel::nextRNGStream(seed)
}
This function forwards the RNG state 1 + count times if seed = TRUE.
Examples
## Set up L'Ecuyer-CMRG random seeds for 100 parallel tasks
## based on .Random.seed in the current R process
seeds <- make_rng_seeds(100L, seed = TRUE)
str(seeds)
#> List of 100
#> $ : int [1:7] 10407 -461383069 2045774952 -842499321 -1722983210 1749961887 206982827
#> $ : int [1:7] 10407 -874555427 -551060838 130660125 2001697669 1165778059 1947543353
#> $ : int [1:7] 10407 -505707648 -66013869 726654978 1046553385 -253601915 1325848883
#> $ : int [1:7] 10407 883800599 1293143016 -23754593 939904860 854957171 2106550610
#> $ : int [1:7] 10407 -1071797022 1901325689 -805444685 -609038482 2102883896 -1262553840
#> $ : int [1:7] 10407 -1268215025 -1398554409 -1184795574 -2040974657 -889381041 79278297
#> $ : int [1:7] 10407 -1813792337 -269505975 -1497913149 346549700 -1979994539 1442666191
#> $ : int [1:7] 10407 2079205008 148804409 1787538486 341018877 2146428859 -781384934
#> $ : int [1:7] 10407 -1643095495 -964529137 -1239447123 -357229980 1549031068 -315086476
#> $ : int [1:7] 10407 -1700587946 -1164361104 811906171 1536982982 1288601425 1268108722
#> $ : int [1:7] 10407 -1374073770 1407686939 22954756 -1842806023 1962394530 -1464657437
#> $ : int [1:7] 10407 -728604973 -1820170499 -1574004107 -1021693249 482461426 -979401371
#> $ : int [1:7] 10407 1529211972 -352311398 305859723 5016098 1050168531 -1711569185
#> $ : int [1:7] 10407 1642492130 -996541310 -772729607 -1665714037 2137754207 -544141628
#> $ : int [1:7] 10407 794764346 -459259047 1935384250 -1376937237 -1090972331 -2087004467
#> $ : int [1:7] 10407 -251590242 -1366237671 384387389 -1630352288 -2090219245 -1573386810
#> $ : int [1:7] 10407 1968750521 1114745425 -139154003 17204597 1468156585 -656470572
#> $ : int [1:7] 10407 -1897591262 -190018702 1671322014 -173503793 1412118190 1491434656
#> $ : int [1:7] 10407 -822962053 -1686640741 1253430675 918675153 1697654214 -1862835754
#> $ : int [1:7] 10407 193179593 799668188 -1415958697 1822491926 1468687685 -1390174721
#> $ : int [1:7] 10407 -2021644810 -276811003 -734148920 1825636968 349945090 140276569
#> $ : int [1:7] 10407 1822933499 2060460930 556828327 913475586 1475617511 -980917609
#> $ : int [1:7] 10407 -2082914992 -181498571 1621734741 1262157651 -867387943 1488122385
#> $ : int [1:7] 10407 1702750244 470804899 -1777151876 439983615 -842549006 1704580624
#> $ : int [1:7] 10407 -466298132 -768022492 1201099529 -651385960 -579083262 -1911843614
#> $ : int [1:7] 10407 -1667813334 523271948 1827028380 1680968158 881180133 1785081530
#> $ : int [1:7] 10407 -250835250 -681118867 55855161 -1683190673 1395296134 -789557452
#> $ : int [1:7] 10407 -2100842111 -328448865 -1236135246 -1040457509 1732268848 -2062531620
#> $ : int [1:7] 10407 98758768 -1284182335 -376275674 1618988665 -1591620866 859031328
#> $ : int [1:7] 10407 763960623 -1677997595 969024144 -1781202987 -517885321 669031745
#> $ : int [1:7] 10407 769724539 -231389890 -1410448681 957135349 1249030881 -1439553914
#> $ : int [1:7] 10407 -1792413533 1819851387 620070209 -720227663 1096428700 -1780444223
#> $ : int [1:7] 10407 -2093641582 -2110168725 927058877 -1121711195 -581906400 1088820377
#> $ : int [1:7] 10407 -2046737347 -1088632125 -885519541 -1639952446 -1953059812 -1279225231
#> $ : int [1:7] 10407 1904743325 589353108 1916043589 1375561962 -1837346374 2061702663
#> $ : int [1:7] 10407 -1675267379 -351905244 1831236835 -916796083 -1975449698 567471907
#> $ : int [1:7] 10407 -738849992 623392771 -54244986 467072762 1619068371 -2038331770
#> $ : int [1:7] 10407 -723522790 545126325 2146360957 -174668847 1367228405 -892142573
#> $ : int [1:7] 10407 1701569222 -612964663 -295098354 408856181 -58466586 25875519
#> $ : int [1:7] 10407 -1851256607 1643211074 71620401 877262400 -58433946 1299169585
#> $ : int [1:7] 10407 1173874300 859806150 -191825081 1990202206 -1987261097 1168747468
#> $ : int [1:7] 10407 -1073121328 1883412713 2049181217 -1701712717 -923316874 -729955670
#> $ : int [1:7] 10407 1374925382 702202438 -1637189761 -583438659 1854320413 -2007166101
#> $ : int [1:7] 10407 1404626899 1932243864 1763596401 -242057279 -1665886854 302363645
#> $ : int [1:7] 10407 -2066244706 -1258508651 518536503 -1308627974 -1915992047 2131874620
#> $ : int [1:7] 10407 1007847427 -89777018 1469917354 849135580 605298751 674492986
#> $ : int [1:7] 10407 -257759294 -728001122 -1576005095 876486411 -250401248 1245078388
#> $ : int [1:7] 10407 883897739 -1800977722 612467795 -692047482 -51523341 2017959264
#> $ : int [1:7] 10407 -1877698936 -1951203018 615661472 1703806732 -1636486452 -1248226395
#> $ : int [1:7] 10407 -631766776 -1991940218 155448157 -1861669168 1672140355 -1520341778
#> $ : int [1:7] 10407 -1460085547 -683553313 -1814523731 43007762 -1278687877 265027994
#> $ : int [1:7] 10407 1062723914 267964767 1418742319 1327389117 -1919461139 1247775344
#> $ : int [1:7] 10407 187257439 -1626414623 -194823518 -52762128 236916753 -1484247671
#> $ : int [1:7] 10407 -153070487 707491731 1754984244 -1632381835 101097107 -1879655929
#> $ : int [1:7] 10407 -1338781225 -1372592209 1117650358 -1775642966 -2090502072 975525550
#> $ : int [1:7] 10407 759278776 1122895322 1735099427 -629062561 -1668534489 524431262
#> $ : int [1:7] 10407 49779418 2140959365 843404812 -231100350 -927513623 1998532725
#> $ : int [1:7] 10407 -1690720033 639206181 925438271 -976380908 1217096004 1043090556
#> $ : int [1:7] 10407 2126966220 -1402959554 2032906062 1982433858 -2018364348 1561869254
#> $ : int [1:7] 10407 -2013056157 -1973604683 641730921 -1326155700 392534407 -709671013
#> $ : int [1:7] 10407 1687062633 -1958265507 -458906645 1750184585 1070588026 1877307067
#> $ : int [1:7] 10407 2147190472 1962117552 -395468948 -1817477426 -1853278723 -1197944284
#> $ : int [1:7] 10407 -1813436329 -1748684753 1307686607 542796209 -506220191 260264008
#> $ : int [1:7] 10407 -945605144 449668899 851154472 1542475879 -1371380464 2001748084
#> $ : int [1:7] 10407 -151277836 -846165221 -853835139 -1932036018 1557635512 1514947639
#> $ : int [1:7] 10407 1636301525 -2095983551 -1350685414 1191719593 -1395389347 -1824488569
#> $ : int [1:7] 10407 -453206981 -288946642 1892580372 1171710696 -89434903 -1915914520
#> $ : int [1:7] 10407 -1049336218 29941457 -252111238 615823867 -292007078 -1401467826
#> $ : int [1:7] 10407 -9516356 -1035865987 -443446330 1206283731 1595707916 -1439329176
#> $ : int [1:7] 10407 -1308096785 -1729972418 -979420703 -542041224 -1873927258 -1409625547
#> $ : int [1:7] 10407 498442954 -1787081684 1771513698 1277814596 -1901116038 1952812835
#> $ : int [1:7] 10407 -247585340 246886090 -913593592 840370309 -1798556881 16584072
#> $ : int [1:7] 10407 1464324899 975611668 563380757 -1632166847 256749777 -2035212149
#> $ : int [1:7] 10407 2064210699 -1519753165 -825801355 -1567166190 1114702667 1898373904
#> $ : int [1:7] 10407 276739496 449120102 1771639919 -503996939 1105555898 1853208888
#> $ : int [1:7] 10407 -1786778935 1068045622 1477144053 1142520170 -1737808834 -113350219
#> $ : int [1:7] 10407 -846526138 1221860699 -212461042 -989193966 -987528962 -1075489120
#> $ : int [1:7] 10407 -1792386906 2132919570 -594400558 611401059 2129207931 -1577169221
#> $ : int [1:7] 10407 -771959374 -2134996270 -729337218 -1945624016 620258173 -262505691
#> $ : int [1:7] 10407 1196533226 1047644072 638833976 624599068 409641216 -1064402831
#> $ : int [1:7] 10407 -106621811 1800033687 -470144637 1640849514 1781120005 597421997
#> $ : int [1:7] 10407 221949979 -13535366 -319572062 1981260 -1855192669 1948192621
#> $ : int [1:7] 10407 120978849 -555169109 -1511399703 1738534283 832557722 300607279
#> $ : int [1:7] 10407 -324249359 -2122963750 589343714 -221073691 305092804 10991145
#> $ : int [1:7] 10407 929109815 -147250502 170761823 -2010032340 1353359240 1947932562
#> $ : int [1:7] 10407 763997703 -139741823 -382172644 -1111451423 -1689115959 777264085
#> $ : int [1:7] 10407 1175206942 -1008005212 -385867413 496710568 1606018861 -281604472
#> $ : int [1:7] 10407 -985748717 -2022900022 -1103839650 -988926046 194480548 1219293346
#> $ : int [1:7] 10407 1907945815 -1459396743 644777202 -1292401017 2081165544 -901163165
#> $ : int [1:7] 10407 -1316111433 -114781635 893227584 -562827803 2025549206 -1184991610
#> $ : int [1:7] 10407 -31741146 -407309231 1025627965 1494208757 307989902 -1428119744
#> $ : int [1:7] 10407 276772957 -101335742 1977863137 745066104 -466034042 -2023018922
#> $ : int [1:7] 10407 1026733511 -745592479 1165828866 -876747639 -487821655 -339273293
#> $ : int [1:7] 10407 -872273226 75841762 -1475440816 652771635 -1876414756 1264321421
#> $ : int [1:7] 10407 478389983 -1389765375 -1511516136 -129731845 -1556479800 119479009
#> $ : int [1:7] 10407 1214224047 1073337598 -1920631642 1296882066 186858568 1199041751
#> $ : int [1:7] 10407 -1410581699 -1283275781 938954649 -275612286 2030955416 1316872257
#> $ : int [1:7] 10407 -744435537 1303651894 -1406028896 -1082332219 925347828 -2101633892
#> $ : int [1:7] 10407 1060942240 1509211155 1785482886 1571702088 -1775782497 -1336830655
#> [list output truncated]