PyCUDA documentation / Документация PyCUDA: Multi-dimensional arrays on the GPU http://documen.tician.de/pycuda/array.html
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Псевдослучайная последовательность чисел удовлетворяет большинству сложный свойств по настоящему случайных последовательностей n-мерных точек сгенерированных детерминистическим алгоритмом разработанным, чтобы заполнить n-мерное пространство равномерно. wuffur 27.02.12 в 12:28 |
|
|
Более затратно генерировать квазислучайные числа. wuffur 27.02.12 в 12:28 |
||
|
Получает версию CURAND, на которой была скомпилированна PyCUDA. Возвращает 3-местный кортеж целых чисел такого вида: wuffur 27.02.12 в 12:30 |
||
|
Возвращает GPUArray заполненный случайными int32 числами повторяющимися N раз, которые можно использовать как зерно для генератора XORWOW. wuffur 27.02.12 в 12:32 |
||
|
Возвращает GPUArray заполненный N случайными числами int32, которые можно использовать как зерно для генератора XORWOW. wuffur 27.02.12 в 12:33 |
||
|
класс pycuda.curandom.XORWOWRandomNumberGenerator(seed_getter=None, offset=0) wuffur 13.08.12 в 11:20 |
||
|
Параметры: wuffur 27.02.12 в 12:33 |
||
|
seed_getter - функция, которая данная как счетчик целых чисел, будет выводить int32 GPUArray зерен. wuffur 27.02.12 в 12:34 |
||
|
Предоставляет псевдослучайные числа. Генерирует последовательности с периодом по крайней мере 2^190. wuffur 27.02.12 в 12:35 |
||
|
CUDA 3.2 и выше. wuffur 27.02.12 в 12:35 |
||
|
Новый в версии 2011.1. wuffur 27.02.12 в 12:36 |
||
|
Возвращает GPUArray счет заполненый векторами направления для инициализации Sobol32 генераторов. wuffur 27.02.12 в 12:38 |
||
|
класс pycuda.curandom.Sobol32RandomNumberGenerator(dir_vector=None, offset=0) wuffur 13.08.12 в 11:22 |
||
|
Параметры: wuffur 27.02.12 в 12:39 |
||
|
dir_vector – a GPUArray 32-элементных int32 векторов, которые используются для инициализации квазислучайным генератором; он должен содержать один вектор, для каждого инициализированного генератора. wuffur 27.02.12 в 12:40 |
||
|
offset - стартовый индекс внутри последовательности Sobol32, дает вектор направления. wuffur 27.02.12 в 12:41 |
||
|
Предоставляет квазислучайные числа. Генерируют последовательность с периодом 2^32. wuffur 27.02.12 в 12:41 |
||
|
CUDA 3.2 и выше. wuffur 27.02.12 в 12:42 |
||
|
Новый в версии 2011.1. wuffur 27.02.12 в 12:42 |
||
|
Однопроходная пользовательская оценка выражения. wuffur 27.02.12 в 12:43 |
||
|
Оценка привлеченных выражений на экземплярах GPUArray может быть кое в чем неэффективной, поскольку новое временное создается для каждого промежуточного результата. Функциональность в модуле pycuda.elementwise содержит инструменты, чтобы помочь сгенерировать ядра, которые оценивают многоэтапные выражение на одном или несколько операндах в одном проходе. wuffur 27.02.12 в 12:46 |
||
|
класс pycuda.elementwise.ElementwiseKernel(arguments, operation, name="kernel", keep=False, options=[], preamble="") wuffur 13.08.12 в 11:25 |
||
|
Генерирует ядро, которое принимает определенное значение скаляров и векторов аргументов и производит скалярные операции над каждым входным значением его аргументов, как будто бы этот аргумент - вектор. wuffur 27.02.12 в 12:48 |
||
|
Аргументы определяются как строка форматированная как список аргументов Си. Операции определяются как выражение назначения, без точки с запятой. Векторы в операции должны индексироваться как переменная i. wuffur 27.02.12 в 12:50 |
||
|
Переменная name определяет имя, под которым ядро компилируется, держа и опции переданные неизменными pycuda.compiler.SourceModule. wuffur 27.02.12 в 12:51 |
||
|
Преамбула опеределяет некоторый исходный код, который включается до поэлементных определений ядер. Вы можете использовать это для включения других файлов и/или определения функций, которые используется с помощью операции. wuffur 27.02.12 в 12:53 |
||
|
Вызывает сгенерированное скалярное ядро. Аргументы могут быть как скалярами так и экземплярами GPUArray. wuffur 27.02.12 в 12:54 |
||
|
Если задан диапазон, то он должен быть объектом срезом и определять диапазон индексов i, для которых операция проводится. wuffur 27.02.12 в 12:55 |
||
|
Если дан срез, то должен быть объект срез и должен быть определен диапазон индексов i для которых операция проводится, усеченных в контейнер. Также срез может содержать отрицательные индексы к индексам, относящимся к концу массива. wuffur 27.02.12 в 12:57 |
||
|
Приведем пример использования: wuffur 27.02.12 в 12:57 |
||
|
(Вы можете найти этот пример, в файле examples/demo_elementwise.py в дистрибутиве PyCuda.) wuffur 27.02.12 в 12:58 |
||
|
Пользовательские сокращения wuffur 27.02.12 в 12:58 |
||
|
класс pycuda.reduction.ReductionKernel(dtype_out, neutral, reduce_expr, map_expr=None, arguments=None, name="reduce_kernel", keep=False, options=[], preamble="") wuffur 13.08.12 в 11:30 |
||
|
Генерирует ядро, которое принимает ряд скалярных или векторных аргументов (по крайней мере один векторный аргумент), производит map_expr над каждой записью ее выхода. Нейтральный служит как исходное значение. preamble - предоставляет возможность добавлять предпроцессорные директивы и другой код(такой как функции помощи), чтобы добавить его до настоящего редукционного кода ядра. wuffur 28.02.12 в 12:37 |
||
|
Векторы в map_expr должны быть проиндексированы переменными i. reduce_expr - использует формальные значения "a" и "b" для подсветки двух операндов бинарной операции редукции. Если вы не определите выражение map_expr, "in[i]" - таким образом будет присутствовать только один входной аргумент - как автоматически предполагается. wuffur 28.02.12 в 12:39 |
||
|
dtype_out - определяет тип numpy.dtype в котором редукция производится и в котором результат возвращается. neutral - определяется как число с плавающей точкой или целое, форматированное как строка. reduce_expr и map_exp - определяются как строка операций форматирования и аргумент определяется как строка форматированная как список аргументов Си. name - определяет имя под которым ядро компилируется, сохраняя и опции переданные неизменными pycuda.compiler.SourceModule. preamble - определяется как строка кода. wuffur 28.02.12 в 12:44 |
||
|
Приведем пример использования: wuffur 28.02.12 в 12:44 |
||
