c - OpenCL-共享内存访问

标签 c opencl gpu

我正在为我的应用程序使用 openCL,并且想知道如何在函数第一次返回后保留 GPU 上的内存。 IE。 将 100b 发送到 GPU 进行一些数学运算,返回另一个 100b,并在 GPU 中保留相同的 100b,这样我就不需要将其发送到 CPU,然后在下一次迭代中返回到 GPU。

例如。

发送a={1,2,3}

kernel__ calc 的 b=a+1,所以 b={2,3,4} 下次我调用一些 fn 时。它必须返回 (3,4,5},我想在不传输到 CPU 然后返回到 GPU 的情况下执行此操作

谢谢

最佳答案

将所需的数据放入 CL 缓冲区 (cl_mem),此抽象允许您操作 GPU 内存块。

关于c - OpenCL-共享内存访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5166204/

相关文章:

opencl - OpenCL 上 __constant 内存的访问性能与 __global 内存相同吗

c - OpenCL 内核中通过指针访问变量

c++ - cout在OpenCL HelloWorld问题中未在控制台或输出缓冲区上显示char数组(char buf)

opencv - OpenCV中adaptiveThreshold()的GPU实现

tensorflow - 使用 Keras model.fit_generator 时 CUDA|RAM 内存不足

c - Windows 和 Linux 上的内存页面写入检测

c - GPIO 端口的文件描述符 I/O 中的奇怪现象

c - 在 OpenCL 和映射缓冲区中使用多个命令队列。我会遇到冲突吗?

c - 错误: Stack around the variable 'ptemp' was corrupted

用 C 代码转换 ISO8601 时间戳