小编Bal*_*egi的帖子

OpenCL:__constant memory和const __global memory之间的区别

我想了解当我创建具有只读属性的缓冲区并__constant在内核中使用const __global地址空间限定符或将其与地址空间限定符一起使用时的区别.

我已经发现的那些不是我的问题的真正答案,但它们包含一些有用的信息:

如果我理解的话,GPU内存中的分配发生在clCreateBuffer函数调用中.所以我不明白的是编译器如何决定缓冲区是在常量内存(有64 KB的限制)还是在全局内存中.(我知道在大多数情况下,常量内存是全局内存空间的一部分.)如果它取决于地址限定符,则意味着可以忽略64 KB限制const __global.

是否有之间的性能有什么区别__constantconst __global?__global内存可以被缓存,因此它们都是只读的,并且(可能)被缓存.(来源:3.3内存模型/全局内存部分和图3.3; http://www.khronos.org/registry/cl/specs/opencl-1.x-latest.pdf#page=24)

const opencl

7
推荐指数
1
解决办法
5810
查看次数

标签 统计

const ×1

opencl ×1