cuda - %envregN 特殊寄存器保存什么?
问题描述
我读过:CUDA PTX code %envreg<32> special registers。那里的发帖人对不尝试将源自 OpenCL 的 PTX 视为常规 CUDA PTX 感到满意。但是 - 他们关于%envN
寄存器的问题没有得到正确回答。
马克哈里斯写道
OpenCL 支持比大多数 NVIDIA GPU 支持的更大的网格,因此需要通过划分多个实际网格启动来虚拟化网格大小,因此需要偏移。同样在 OpenCL 中,索引不一定从 (0, 0, 0) 开始,用户可以指定驱动程序必须传递给内核的偏移量。因此,为 OpenCL 和 CUDA C 启动初始化的寄存器是不同的。
那么,%envN
寄存器是否构成“虚拟网格索引”?这些寄存器中的每一个都包含什么?
解决方案
推荐阅读
- javascript - 如何将外部 JS jQuery 文件中的变量值传递给 html 文件中的函数?
- php - 多语言网站 PHP 数组
- java - 如何在 Java 中使用 iTextPDF 5.5.13 将 html 图像添加到 pdf?
- scala - 部分转置/枢轴数据帧
- python - 使用 Mac OS 在 Python 项目中导入错误 Openpose
- excel - 如何在出错时显示更改消息框然后继续代码
- jboss - 为什么 4.2.0 版没有 maven resteasy-jaxrs 包?
- android - 相机应用程序在权限对话框出现之前停止,在我授予权限后工作
- android - React-Native:渲染 JSON 对象的问题
- jquery - 如何通过jquery将sqlite数据库中的倒数第二,倒数第三的值等获取到html?