tensorflow 使用`jit_compile=True`时,`tf.raw_ops.Asinh`的行为不同,

70gysomp  于 4个月前  发布在  其他
关注(0)|答案(1)|浏览(92)

问题类型

Bug

你是否在TensorFlow Nightly版本中复现了这个bug?

问题来源

source

TensorFlow版本

2.14.0

自定义代码

OS平台和发行版

Ubuntu 22.04.3 LTS (x86_64)

移动设备

无响应

Python版本

无响应

Bazel版本

无响应

GCC/编译器版本

无响应

CUDA/cuDNN版本

11.8

GPU型号和内存

GPU 0: NVIDIA GeForce RTX 2070 GPU 1: NVIDIA GeForce RTX 2070 GPU 2: NVIDIA GeForce RTX 2070 GPU 3: NVIDIA GeForce RTX 2070

当前行为?

当在启用JIT编译的tf.function中调用tf.raw_ops.Asinh操作时,它产生的结果与不使用JIT编译调用相同操作时的结果不同。这种不一致性在GPU设备上执行代码时观察到。

重现问题的独立代码

I can reproduce this issue on the colab: https://colab.research.google.com/drive/1q6CDDRX-F0wCLvitMgfXTY92k72MFb2Z?usp=sharing

相关日志输出

File "/home/guihuan/LLM/results/tf-2/2023-10-22-20-21/test.py", line 46, in <module>
    tf.debugging.assert_near(tf.cast(no_op_res, tf.float64), tf.cast(op_res, tf.float64), atol=0.001, rtol=0.001)
  File "/home/guihuan/.conda/envs/night/lib/python3.9/site-packages/tensorflow/python/util/traceback_utils.py", line 153, in error_handler
    raise e.with_traceback(filtered_tb) from None
  File "/home/guihuan/.conda/envs/night/lib/python3.9/site-packages/tensorflow/python/ops/control_flow_assert.py", line 102, in Assert
    raise errors.InvalidArgumentError(
tensorflow.python.framework.errors_impl.InvalidArgumentError: Expected 'tf.Tensor(False, shape=(), dtype=bool)' to be true. Summarized data: b''
b'x and y not equal to tolerance rtol = tf.Tensor(0.001, shape=(), dtype=float64), atol = tf.Tensor(0.001, shape=(), dtype=float64)'
b'x (shape=(10, 9, 8) dtype=float64) = '
14.555534362792969, -12.858231544494629, -13.878985404968262, ...
b'y (shape=(10, 9, 8) dtype=float64) = '
14.555534362792969, -3.812309503555298, -4.158883094787598, ...
fafcakar

fafcakar1#

你好,@zoux1a ,我已经复制了报告的行为。这里的差异相当大。附件 gist 供参考。
需要检查这种行为的原因。谢谢!

相关问题