可以在CUDA速度计算中实现Tensorflow自定义操作梯度吗?

时间:2019-03-14 07:46:31

标签: c++ tensorflow eigen

在具有GPU支持的Tensorflow中编写自己的自定义操作时,the guide建议使用python计算梯度。 Elsewhere人们已经将C ++与Eigen之类的库一起使用,以相同的方式更有效地实现了渐变。

我的问题是;使用自定义操作参数Tensors作为在GPU上进行训练时指向设备内存的指针(对吗?):

db.people.find({$or: [{name:"Stuart"}, {age:24}]})

通过在GPU上赢得Win CUDA的操作计算梯度是否可以避免在主机和设备之间复制数据?

这会减少计算时间吗? (我知道这取决于梯度计算对并行计算的适应程度,但前提是可以做到)

有什么理由不应该这样做吗?/潜在的速度增长是否太微不足道,以至于不值得?

1 个答案:

答案 0 :(得分:-1)

您可以简单地在CUDA中构建一个op,然后在渐变的python定义中调用它,这样您就可以大大加快渐变计算的速度,而不必在GPU和CPU内存之间进行复制