以某种方式,当我使用bfloat16时,tensorflow无法检测到我的GPU。
是否可以在GPU上使用bfloat16?或者我只能在张量处理单元上使用bfloat16?
错误消息是否意味着张量流无法计算梯度?</ p>
tensorflow.python.framework.errors_impl.NotFoundError: No registered 'Reciprocal' OpKernel for CPU devices compatible with node {{node ConstantFolding/foo/gradients/foo/Mean_1_grad/truediv_recip}} = Reciprocal[T=DT_BFLOAT16, _device="/job:localhost/replica:0/task:0/device:CPU:0"](foo/gradients/foo/Mean_1_grad/Const_1)
(OpKernel was found, but attributes didn't match)
. Registered: device='XLA_GPU'; T in [DT_FLOAT, DT_DOUBLE, DT_INT32, DT_COMPLEX64, DT_INT64, DT_BFLOAT16, DT_HALF]
device='XLA_CPU'; T in [DT_FLOAT, DT_DOUBLE, DT_INT32, DT_COMPLEX64, DT_INT64, DT_HALF]
device='XLA_CPU_JIT'; T in [DT_FLOAT, DT_DOUBLE, DT_INT32, DT_COMPLEX64, DT_INT64, DT_HALF]
device='XLA_GPU_JIT'; T in [DT_FLOAT, DT_DOUBLE, DT_INT32, DT_COMPLEX64, DT_INT64, DT_BFLOAT16, DT_HALF]
device='GPU'; T in [DT_INT64]
device='GPU'; T in [DT_DOUBLE]
device='GPU'; T in [DT_HALF]
device='GPU'; T in [DT_FLOAT]
device='CPU'; T in [DT_COMPLEX128]
device='CPU'; T in [DT_COMPLEX64]
device='CPU'; T in [DT_DOUBLE]
device='CPU'; T in [DT_HALF]
device='CPU'; T in [DT_FLOAT]
[[{{node ConstantFolding/foo/gradients/foo/Mean_1_grad/truediv_recip}} = Reciprocal[T=DT_BFLOAT16, _device="/job:localhost/replica:0/task:0/device:CPU:0"](foo/gradients/foo/Mean_1_grad/Const_1)]]