Описание тега pyopencl
PyOpenCL предоставляет Pythonic доступ к API параллельных вычислений OpenCL.
0
ответов
pyopencl ставит ядро в очередь, чтобы создать только один рабочий элемент на строку в 2d буфере
Как правильно представить 2D-изображение в pyopencl, но поставить в очередь только один рабочий элемент на строку, а не один рабочий элемент на пиксель? Кажется, что ndrange хочет сделать по одному элементу для каждого пикселя или пиксельного компон…
15 июн '18 в 21:28
2
ответа
Передача структуры в openCL Kernel
Я хочу передать структуру в ядро opencl, структура struct test { int *x; float *y; char *z; }; и распределение памяти и инициализация похожи struct test t; t.x = (int*)malloc(sizeof(int)*100); t.y = (float*) malloc (sizeof(float)*50); t.z = (char*…
01 фев '13 в 10:57
2
ответа
Хранение ядра в отдельном файле - PyOpenCL
Я пытаюсь сохранить часть кода ядра с 3 """в другом файле. Я пытался сохранить его как текстовый файл и файл bin, и прочитать его, но не смог добиться успеха с этим. Это начало давать мне ошибку, говоря, что "" "отсутствует, или) отсутствует. "Однак…
22 сен '16 в 16:57
1
ответ
Проблемы с памятью Python27
Я пытаюсь обработать некоторые данные, используя python, но часто сталкиваюсь с "MemoryError". Для обработки данных мне нужно выполнить цикл ~400 раз. Проблема в том, что каждый раз, когда я вхожу в этот цикл 20-30 раз, я получаю "MemoryError". При …
21 апр '14 в 14:06
1
ответ
Может ли OpenCL на APU использовать всю память?
Можно ли собрать машину с чем-то вроде 32 ГБ ОЗУ и использовать около 28 ГБ с OpenCL? Мой текущий APU - Athlon 5350 с "глобальным объемом памяти", о котором сообщалось, 2142658560. Я немного поиграл с pyopencl с CL_MEM_USE_HOST_PTR, но я не нашел сп…
01 май '18 в 23:42
1
ответ
PyOpenCL сокращение Ядро на каждый пиксель изображения в виде массива вместо каждого байта (режим RGB, 24 бита)
Я пытаюсь вычислить среднюю яркость изображения RGB. Для этого я нахожу яркость каждого пикселя, т.е. L(r,g,b) = X*r + Y*g + Z*b (some linear combination). А затем найдите среднее значение, суммируя яркость всех пикселей и деля на ширину * высоту. Ч…
04 май '14 в 06:58
1
ответ
Не квадратное матричное умножение в Opencl
Я хочу сделать матричное умножение с двумя неквадратными матрицами (2000,100), (100,100), я пытаюсь использовать блочную подматрицу, как в примере с Nvidia, но результат неверный, я нашел здесь решенный метод. Не квадратное матричное умножение в CUD…
30 июн '12 в 13:09
0
ответов
PyOpenCL kron Kernel
Основной код: from definitions import * import pyopencl as cl import numpy from time import time N = 16 num_iter = 10 a = numpy.random.rand(N,N).astype(numpy.float32) b = numpy.random.rand(N,N).astype(numpy.float32) print('Starting native iterations…
11 сен '16 в 05:58
2
ответа
clSetKernelArg возвращает код ошибки -49
Я написал следующий код C++. В clSetKernelArg( kernel, 8, sizeof( cl_mem ), (void *) &mob_whdis );, это возвращает error code -49и я не понимаю почему. Все остальное работает правильно. Может кто-нибудь мне помочь? cl_mem mob_X = NULL; cl_mem mo…
15 июл '13 в 10:11
1
ответ
Нет модуля с именем pyopencl (Py2exe)
У меня возникли некоторые проблемы с модулем PyOpenCL при попытке сделать.exe из Py2Exe. Py2Exe создает.exe так, как должен (нет "ImportError: здесь нет модуля с именем pyopencl"), но когда я запускаю.exe, он говорит, что нет модуля с именем pyopenc…
29 сен '12 в 14:29
1
ответ
AttributeError: у объекта 'CommandQueue' нет атрибута 'dtype'
Я пытаюсь вычислить БПФ с pyFFT. Но следующий код приводит к ошибке. self.ctx = cl.create_some_context(interactive=False) self.queue = cl.CommandQueue(self.ctx) self.plan = Plan(fft_size, self.queue) gpu_data0 = cl_array.to_device(self.ctx, self.que…
26 июн '14 в 22:16
1
ответ
Добавить результат OpenCL в список / Уменьшить пространство решения
У меня есть ядро OpenCL с несколькими рабочими элементами. Предположим для обсуждения, что у меня есть двумерное рабочее пространство с элементами x*y, работающими с массивом входных элементов одинакового размера, но с небольшим количеством элемен…
19 апр '16 в 11:51
2
ответа
Компиляция pyopencl
Я пытаюсь скомпилировать pyopencl на Ubuntu 12.10 в каталоге virtualenv, но, похоже, выдает ошибку: gcc -pthread -fno-strict-aliasing -fwrapv -Wall -O3 -DNDEBUG -fPIC -DPYGPU_PACKAGE=pyopencl -DBOOST_PYTHON_SOURCE=1 -DPYOPENCL_USE_DEVICE_FISSION=1 -…
27 ноя '12 в 22:32
1
ответ
Ядро PyOpenCL не применяется ко всему массиву
Я хотел получить демонстрацию Elementwise, которая поставляется с PyOpenCL, и решил попробовать это: from __future__ import absolute_import from __future__ import print_function import pyopencl as cl import pyopencl.array as cl_array import numpy fr…
19 ноя '18 в 00:08
1
ответ
Почему это ядро pyopencl не может правильно преобразовать скаляры в цвета?
Я написал ядро opencl для преобразования скалярных значений в цвета, потому что выполнение этого в обычном python занимает несколько секунд. К сожалению, ядро (которое является урезанной версией некоторой логики, которая работает в другом месте)…
17 май '16 в 17:53
1
ответ
PyOpencl - неверные аргументы переданы Kernell
Я с трудом выполняю базовую скалярную операцию с PyOpenCl. По сути, я пытаюсь сделать, учитывая массив типа с плавающей точкой, умножить каждый элемент массива на скалярное число с плавающей точкой и поместить результат в новый буфер. Это должно быт…
29 дек '14 в 16:57
1
ответ
Выполнение одного и того же цикла for во многих потоках GPU с использованием OpenCL
Мне нужно вычесть 2D-массив, Dот многих других двухмерных массивов. Я линеаризовал (сплющил) все массивы: D является массивом из 25 элементов, и imges является одномерным массивом, в котором 4 25-элементных массива были объединены. Значение: если я …
28 окт '15 в 21:20
1
ответ
Как использовать многопроцессорную очередь Python для доступа к GPU (через PyOpenCL)?
У меня есть код, выполнение которого занимает много времени, и поэтому я исследовал многопроцессорную библиотеку Python, чтобы ускорить процесс. Мой код также имеет несколько шагов, которые используют GPU через PyOpenCL. Проблема заключается в том, …
13 апр '15 в 18:46
1
ответ
В Python, как передать скалярный аргумент в ядро OpenCL?
Я использую привязки Python для OpenCL, и я написал ядро, которое ожидает скалярный (float) аргумент, но я не могу найти правильный способ передать его. Если я просто призываю prg.bloop(queue, [width,height], None, centers_g, 16/9, result_g) Я получ…
19 апр '16 в 17:10
1
ответ
Умножение матриц PyOpenCL
У меня есть этот код для умножения матриц с помощью pyopenCL. Моя проблема в том, что в некоторых матрицах результат неверен, и я не понимаю, почему. После некоторого исследования я думаю, что это связано с глобальным размером чего-то подобного, но …
05 мар '13 в 22:08