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