如何解决Tensorboard实例被列为正在运行,而实际进程已终止
在Jupyter笔记本中:
notebook.list()
显示:
已知的TensorBoard实例:
- 端口6006:logdir / home / ai-mining / AI_Mining / logs / train(开始于21:49:59之前; pid 32470)
- 端口6006:logdir / home / ai-mining / AI_Mining / logs /(始于1:20:19之前; pid 34361)
,如果可以,!kill 32470
!kill 34361
/ bin / sh:1:杀死:没有这样的过程
/ bin / sh:1:杀死:没有这样的过程
实际上我是否在终端中列出了张量板的处理过程:ps -ax |grep tensorboard
3788点/ 9 S + 0:00 grep --color = auto张量板
没有这样的过程可以杀死。
我应该提到log_dir中存储数据的日志为空。
同样,在这种情况下,唯一的选择是重新加载%reload_ext tensorboard
而不加载。由于实际过程已失效,因此无法正常工作。
如何清除notebook.list()
列出的日志或以任何方式解决我的问题?我现在无法连接到张量板。预先感谢。
解决方法
这终于解决了我的问题。如果有更好的方法来解决这个问题,我将很感兴趣。
张量板会跟踪目录/tmp/.tensorboard-info
中的进程ID(甚至是已失效的ID)。如果此文件夹不在/ tmp文件夹中,则可以使用
import tempfile
import os
import shutil
path = os.path.join(tempfile.gettempdir(),".tensorboard-info")
shutil.rmtree(path) ##this removes the folder recursively
!fuser 6006/tcp -k #clear the port
我删除了.tensorboard-info
文件夹,清除了logs-dir文件夹,然后重新启动了Tensorboard。
为避免反复进行清除,可以将日志文件保存在logs-dir文件夹中的单独文件夹中,并仅使Tensorboard的一个实例运行,并在需要时重新加载它。使用以下方法创建新文件夹:
import datetime
TensorBoard(histogram_freq=1,log_dir='/home/my_project_directory/logs/'+ datetime.now().strftime("%Y%m%d-%H%M%S"))
每次运行都会在Tensorboard中单独列出,并且可以进行可视化处理。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。