问题描述
我正在python 3.7中使用tf 2.3训练DNN,并注意到许多tf操作是在cpu中而不是在GPU中执行的,而对于tf如何决定在哪里执行每个操作没有明确的区分。
例如,在使用探查器时,我注意到有时tf.where(SelectV2)在GPU中执行,但大多数情况下是在cpu中执行,即使我在命名空间之前指定应使用gpu({{1 }}。
在读取following answer之后,我尝试在运行操作之前将数据强制转换为float32,但它们仍在cpu上执行。
- 如何控制哪些设备上运行哪些操作?
- 是否可以获得GPU支持的操作列表?
- 是否有一种简单的方法可以分析图形中cpu操作的发生位置(traceviewer中的名称范围似乎仅与GPU有关)?
- 如何确定何时在cpu中运行调用以及何时在GPU中运行以及将图形跟踪到trace_viewer中的位置?
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)