Создайте независимые потоки случайных чисел на графическом процессоре
s = parallel.gpu.RandStream.create('gentype')
[s1,s2,...] = parallel.gpu.RandStream.create('gentype','NumStreams',n)
[___] = parallel.gpu.RandStream.create('gentype',Name,Value)
создает один поток случайных чисел, который использует алгоритм генератора случайных чисел, заданный s
= parallel.gpu.RandStream.create('gentype'
)'gentype'
.
Функция создания объекта parallel.gpu.RandStream
является более краткой альтернативой когда это необходимо, чтобы создать единый поток.
[s1,s2,...] = parallel.gpu.RandStream.create(
создает потоки 'gentype'
,'NumStreams',n)n
случайных чисел, которые используют алгоритм генератора случайных чисел, заданный 'gentype'
. Потоки независимы в псевдослучайном смысле. Потоки не обязательно независимы от потоков, созданных в других случаях.
[___] = parallel.gpu.RandStream.create(
также задает дополнительные пары 'gentype'
,Name,Value
)Name,Value
, чтобы управлять созданием потока, включая количество независимых потоков, чтобы создать.
Если вы создаете несколько потоков путем вызова parallel.gpu.RandStream.create
несколько раз, потоки не обязательно независимы друг от друга. Создать независимые потоки из отдельных вызовов parallel.gpu.RandStream.create
:
Задайте то же множество значений для gentype
, 'NumStreams'
и 'Seed'
в каждом случае.
Задайте различное значение для 'StreamIndices'
, который является между 1
и значением 'NumStreams'
в каждом случае.
gpurng
| parallel.gpu.RandStream
| parallel.gpu.RandStream.getGlobalStream
| parallel.gpu.RandStream.list
| parallel.gpu.RandStream.setGlobalStream