c++ - CUDA for pytorch:CUDA C++ 流和状态
问题描述
我正在尝试遵循本教程并使用 CUDA 后端制作一个简单的 c++ 扩展。
我的 CPU 实现似乎工作正常。
我很难找到示例和文档(似乎事情在不断变化)。
具体来说,
我看到 pytorch cuda 函数得到
THCState *state
参数 - 这个参数来自哪里?我怎样才能获得state
我的功能呢?
例如,在 cuda 实现中tensor.cat
:void THCTensor_(cat)(THCState *state, THCTensor *result, THCTensor *ta, THCTensor *tb, int dimension)
但是,当
tensor.cat()
从 python one 调用时不提供任何state
参数,pytorch 在“幕后”提供它。pytorch 如何提供此信息以及如何获取它?state
然后转换为cudaStream_t stream = THCState_getCurrentStream(state);
出于某种原因,THCState_getCurrentStream
不再定义?我怎样才能stream
从我的state
?
我还尝试在pytorch论坛上提问 - 到目前为止无济于事。
解决方案
它已被弃用(没有文档!)请参见此处: https ://github.com/pytorch/pytorch/pull/14500
简而言之:使用at::cuda::getCurrentCUDAStream()
推荐阅读
- javascript - ion-datetime:如何获取没有时间戳的日期值?
- reactjs - 此导航器缺少导航道具
- java - Spring Boot 的 @RequestBody 中的 JSON 正文
- java - 关联分配游标结果集问题
- reactjs - 是否有用于反应的 buefy 等效包?
- javascript - javascript中如何实现调用一个函数自动调用另一个函数
- google-sheets - 插入行时,有没有办法使用数组公式来保留我的公式(添加特定列)?
- reactjs - 汉堡菜单下拉到 xs 调整大小的新行
- codenameone - 检测 Codename One 轻量级日期选择器上的“取消”按下
- sql - SQL Server:使用聚集索引导入大数据