【问题标题】:OpenCL Pointer to Local Memory in Local Memory as Function Argument?OpenCL指向本地内存中的本地内存作为函数参数?
【发布时间】:2013-03-24 04:49:05
【问题描述】:

我想将内核函数中声明的本地内存传递给另一个函数进行一些处理。我想控制它,以便我的所有指针也都在本地空间中声明:

void funcB(__local float * __local p)
{
}

__kernel void funcA()
{
    __local float data[256];
    __local float * __local ptr;
    ptr = data;
    funcB(ptr);
}

和 funcB 声明不起作用,因为: 错误:参数可能没有用地址空间限定

有没有办法做这样的事情?谢谢!

【问题讨论】:

标签: opencl gpu


【解决方案1】:

来自 OpenCL Spec 1.2 第 6.5.4 节:

非内核函数内的所有变量,所有函数参数都在__private或私有地址空间中。

由于非内核函数是内联的,所以我不确定你想通过这样做来完成什么。

【讨论】:

  • 这似乎是答案。谢谢。
猜你喜欢
  • 1970-01-01
  • 2017-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-12
  • 1970-01-01
  • 2012-07-25
相关资源
最近更新 更多