我一直在尝试使用Cloud TPU v2-8节点分析自定义NN模型的预测调用。
必须指出的是,我的预测调用大约需要2分钟才能完成,而且我使用的是按TFRecord批划分的数据。
我按照官方文档“Profile your model with Cloud TPU Tools“,尝试捕获一个配置文件:
1.使用Tensorboard UI和
1.“编程方式”,用tf.profiler.experimental.start()和tf. profiler. experimental.stop() Package 预测调用,但我在这两种情况下都没有成功。
# TPU Node connection is done before...
# TPU at this point is already running
logdir_path = "logs/predict"
tf.profiler.experimental.start(logdir_path)
# Tensorflow predict call here
tf.profiler.experimental.stop()
我可以在这两种情况下生成一些数据(Tensorboard UI和Profiler调用),但当我尝试在Tensorboard中打开它并指向logdir路径时,我收到了“当前数据集没有处于活动状态的 Jmeter 板”消息。
是否有任何方法可以使用在云TPU节点中运行的模型分析Tensorflow/Keras预测调用?
奇怪的事实-Tensorflow文档和云TPU文档中似乎存在不一致之处:在Tensorflow优化文档中,我们可以看到TPU硬件不支持tf.profiler.experimental.start/stop调用,但在Google云文档中,这是在TPU中捕获配置文件的推荐方法。
设定:
- tensorflow 2.6.1
- 张紧板2.9.1
- Python 3.8语言
- 云TPU节点v2-8
2条答案
按热度按时间vhmi4jdf1#
1.请检查日志目录中的跟踪文件。如果这些文件太小,很可能是在跟踪过程中遇到了一些问题。
1.只需确保您键入了正确的命令。
$ tensorboard --logdir logs/predict
1.使用
tf.profiler.experimental.client.start(...)
尝试另一种分析方法,如TF分析器Docs所示。然后打开tensorboard进行可视化。
smdnsysy2#
对于TPU节点架构,您也可以尝试使用
cloud-tpu-profiler
:然后使用以下命令捕获配置文件
详情请参阅此处。
TPU VM是推荐的TPU体系结构,您可以在使用TPU VM时遵循Profile TPU VM guide。