发布于 2016-12-13 16:43:02
至于为什么:我不知道这是事实,但是本地/私有地址空间指针几乎肯定只是在一个平面物理寄存器文件/内存区域中作为偏移量/索引来实现。没有虚拟内存一样的地址重映射,只有一个大数组。您仍然希望能够访问数组索引0,因此“无效指针”(无效索引)需要其他的内容。
别忘了,NULL =不可取消引用指针= 0也只是普通C中的惯例-一些非OpenCL系统在地址0处也有有效内存。有关memset等的标准有一些复杂之处,所以如果您对精确的规范感兴趣,最好自己阅读文档。
我不知道您到底在问什么关于"how“--您不能明智地在不同OpenCL地址空间中的指针之间进行转换,因此没有冲突。
https://stackoverflow.com/questions/41102947
复制相似问题