我正在尝试学习如何将 XLA 用于我的模型。我在这里查看官方文档:https ://www.tensorflow.org/xla#enable_xla_for_tensorflow_models 。据记载,有两种方法可以启用 XLA: 1) 显式编译,通过使用@tf.function(jit_compile=True)
来装饰您的训练函数。2)通过设置环境变量进行自动集群。
因为我使用的是 tensorflow 1.15,而不是 2.x。所以我认为第二种方法与使用此语句相同:
config.graph_options.optimizer_options.global_jit_level = (
tf.OptimizerOptions.ON_1)
您还可以从这里找到信息:https ://www.tensorflow.org/xla/tutorials/autoclustering_xla 。看来这是他们在 tf2.x 中使用的:
tf.config.optimizer.set_jit(True) # Enable XLA.
我认为它们是相同的,如果我错了,请纠正我。
好的,所以如果使用第一种方法,我认为在 tf1.15 中,这相当于使用
tf.xla.experimental.compile(computation)
所以,我的问题是我是否习惯于
tf.xla.experimental.compile(computation)
装饰我的整个训练功能。这是否等同于使用
config.graph_options.optimizer_options.global_jit_level = (
tf.OptimizerOptions.ON_1)
? 有人知道吗?非常感激。