pyopencl

    6热度

    1回答

    我有一个OpenCL内核需要将数组作为多个数组进行处理,其中每个子数组总和保存在本地高速缓存数组中。 例如,设想的鸟枪数组: [[1, 2, 3, 4], [10, 30, 1, 23]] 每个工作组得到一个阵列(在为例,我们有2工作的基团); 每个工作项处理两个数组索引(例如将值索引乘以local_id),其中工作项结果保存在工作组共享数组中。 __kernel void test(__gl

    1热度

    1回答

    如何以正确的方式将字符串列表传递给opencl内核? 我试过这种方式使用缓冲区(见下面的代码),但我失败了。 的OpenCL(struct.cl): typedef struct{ uchar uc[40]; } my_struct9; inline void try_this7_now(__global const uchar * IN_DATA , c

    3热度

    2回答

    假设我有一个内核来计算两个数组的元素总和。而不是将A,B和C三个参数,我让他们结构成员如下: typedef struct { __global uint *a; __global uint *b; __global uint *c; } SumParameters; __kernel void compute_sum(__global SumParamete

    1热度

    1回答

    我在Linux上运行AMD Radeon GPU,并安装了用于OpenCL(最新版本)的AMD SDK。 现在,当我没有通过GDM登录时(当主X服务器没有运行时),没有AMD GPU可用,所有的计算都将由CPU完成。 当我通过GDM(主运行X服务器)登录,当我列出了他们使用蟒蛇以下程序的GPU显示(仅核心部分显示): for platform in cl.get_platforms():

    -1热度

    2回答

    我写了下面的C++代码。在clSetKernelArg(kernel, 8, sizeof(cl_mem), (void *) &mob_whdis);,它返回error code -49,我不明白为什么。其他一切正常运行。谁能帮我? cl_mem mob_X = NULL; cl_mem mob_Y = NULL; cl_mem mob_Z = NULL; cl_mem mob_WAT =

    1热度

    2回答

    我想使用pyopenCL来计算python中webcam流的平均值。作为测试我试图计算在多个帧的代表矩阵的平均值,如可以看到下面: import pyopencl as cl import numpy as np import time import os os.environ['PYOPENCL_CTX']='0' ctx = cl.create_some_context() q

    1热度

    1回答

    您好我在pyopencl中编写此代码以获得稀疏随机向量,但问题是我无法将任何值写入索引数组有什么问题?输出始终为零! 这里是我的代码 import pyopencl as cl import numpy as np from pyopencl import array from pyopencl import clrandom ctx = cl.create_some_context()

    5热度

    3回答

    在OpenCL中,标记缓冲区是否有任何性能优势,如READ_ONLY或WRITE_ONLY? 这kernel是我经常看到(一个是READ_ONLY和b是WRITE_ONLY): __kernel void two_buffer_double(__global float* a, __global float* b) { int i = get_global_id(0); b[

    0热度

    1回答

    我在OpenCL中编写了一个光线跟踪程序,并且在我的内核中有一个函数,Quadratic,它接收3个浮点变量和两个指向浮点值的指针。 功能: bool Quadratic(float A, float B, float C, float *t0, float *t1) { float discrim = B * B - (4.0 * A * C); if (discrim <=

    0热度

    2回答

    我使用pyOpenCl 2013.1,我的代码在nVidia GPU,AMD CPU和AMD GPU上崩溃,但在Intel CPU上工作。 使用nvidia GPU,在调用内核之后,queue.finish上出现错误。 LogicError: clFinish failed: invalid command queue 我在下面的代码片段找到了第48行的原因。 1: typedef struc