我正在嘗試運行以下關於OpenCL的代碼。在覈函數,我會定義一個數組int arr[1000] = {0};
OpenCL變量或內核成本內存中的數組?
kernel void test()
{
int arr[1000] = {0};
}
然後,我將創建N
線程來運行內核。
cl::CommandQueue cmdQueue;
cmdQueue.enqueueNDRangeKernel(kernel, cl::NullRange, cl::NDRange(N), cl::NullRange); // kernel here is the one running test()
我的問題是,因爲我們知道的OpenCL將並行運行的線程,這是否意味着,峯值內存會N * 1000 * sizeof(int)
?
堆棧空間呢? –