2015-07-11 67 views
0

我想將尺寸爲dimn數學向量數組傳遞給OpenCL,下面是函數定義。如何在OpenCL中聲明多個n維點的數組

__kernel void multiDimFunction(__global float** data, uint dim, uint n) 
{ 
    // TO DO: Kernel implementation 
} 

函數參數dimn OpenCL的代碼被編譯之前是已知的。

回答

1

典型的方法是將您的值存儲在一維數組中並手動計算線性索引。例如,要訪問data(x,y),您需要加載data[x + y*dim]

如果dim是OpenCL通過矢量類型(2,3,4,8或16)支持語言的值,那麼您可能會使用這些類型的數組(例如global float8 *data用於Nx8數組,您可以作爲data[i].s0data[i].s7)訪問。

相關問題