Tensorflow 如何启动XLA演示中的TysFraceShell

Tensorflow 如何启动XLA演示中的TysFraceShell,tensorflow,Tensorflow,在2017年TensorFlow开发峰会的最新视频“XLA:TensorFlow,Compiled!”中,演示者展示了一个类似iPython的外壳,可以查看JIT程序集: 我正在尝试重新创建演示,以便可以显示生成的用于其他示例代码的程序集 我假设shell只是一个导入TensorFlow并放入iPython shell的包装器? 我尝试启动一个脚本,例如: $ TF_XLA_FLAGS=--xla_dump_assembly=true python mnist_softmax_xla.py

在2017年TensorFlow开发峰会的最新视频“XLA:TensorFlow,Compiled!”中,演示者展示了一个类似iPython的外壳,可以查看JIT程序集:

我正在尝试重新创建演示,以便可以显示生成的用于其他示例代码的程序集

我假设shell只是一个导入TensorFlow并放入iPython shell的包装器? 我尝试启动一个脚本,例如:

$ TF_XLA_FLAGS=--xla_dump_assembly=true python mnist_softmax_xla.py
并用以下材料将其放置在外壳上:

import IPython; IPython.embed()
但是当我尝试在演示中重新创建代码段时,程序集不会显示。有人能帮忙复制吗


谢谢

您是对的,shell只是一个导入TensorFlow并放入iPython shell的包装器

注意,为了获得支持XLA的TyoSoFrices版本,您需要从源编译TysFooSurm。当您运行/配置时,您将被询问是否启用XLA,并且您需要响应Y(是)。 我们正在努力工作,以默认地启用XLA,但这正是当前需要的。希望这有帮助

支持“vmodule”日志记录,因此可以在特定的转换单元中启用日志记录以查看程序集。开源TensorFlow通常不使用标志,因此有一些环境变量用于控制这种面向调试的行为。我只是在head上构建并在GCE虚拟机上运行:

cdleary@instance-1:~/tensorflow$TF_CPP_VMODULE=gpu_compiler=3 bazel bin/tensorflow/compiler/xla/tests/while_test_gpu

正如在视频中一样,它会吐出PTX(虚拟)组件:

2017-08-05:45:07.030245:I tensorflow/compiler/xla/service/gpu/gpu\compiler.cc:349].4.2版
2017-08-05 05:45:07.030252:I tensorflow/compiler/xla/service/gpu/gpu_compiler.cc:349).目标sm_37
2017-08-05 05:45:07.030257:I tensorflow/compiler/xla/service/gpu/gpu_compiler.cc:349]。地址_大小64
2017-08-05 05:45:07.030263:I tensorflow/compiler/xla/service/gpu/gpu\compiler.cc:349]
2017-08-05 05:45:07.030269:I tensorflow/compiler/xla/service/gpu/gpu\compiler.cc:349]/.globl\u大于
2017-08-05 05:45:07.030275:I tensorflow/compiler/xla/service/gpu/gpu(compiler.cc:349]
2017-08-05 05:45:07.030281:I tensorflow/compiler/xla/service/gpu/gpu_compiler.cc:349]。可见。条目_大于(
2017-08-05 05:45:07.030293:I tensorflow/compiler/xla/service/gpu/gpu_compiler.cc:349],
2017-08-05 05:45:07.030300:I tensorflow/compiler/xla/service/gpu/gpu_compiler.cc:349]
[剪报]

同样,对于CPU:

cdleary@instance-1:~/tensorflow$TF\u CPP\u VMODULE=compiler\u functor=3 bazel bin/tensorflow/compiler/xla/tests/while\u test\u cpu

产生:

[snip]
2017-08-05 05:49:43.819213:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]嵌套,而scalarresult.v2:
2017-08-05 05:49:43.819244:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]0x00000000 movq(%rcx),%rax
2017-08-05 05:49:43.819256:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]0x00000003 movl$0,(%rax)
2017-08-05 05:49:43.819263:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]0x00000009 movq 8(%rcx),%rcx
2017-08-05 05:49:43.819284:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]0x0000000d nopl(%rax)
2017-08-05 05:49:43.819299:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]0x00000010 movq%rcx,16(%rcx)
2017-08-05 05:49:43.819314:I tensorflow/compiler/xla/service/cpu/compiler_functor.cc:121]0x00000014 movq%rax,24(%rcx)
[剪报]


HTH!

我认为这是他们拥有的一个内部工具。我在源代码中查找这些命令,但找不到任何参考