Pil*_*hae 5 kubernetes tqdm kubeflow
我正在使用 Kubernetes,并且一个训练作业在集群上运行。我使用 TQDM 作为进度条,但与我预期的不同,当我检查 Kubernetes Pod 日志时,进度条没有显示。有没有人有解决这个问题的方法?
Gal*_*e33 11
我没有一个好的解决方案,但这对我有帮助:
如果您使用以下命令,tqdm 进度条将按预期显示:
kubectl attach <pod_name>
Run Code Online (Sandbox Code Playgroud)
代替:
kubectl logs <pod_name>
Run Code Online (Sandbox Code Playgroud)
小智 1
不幸的是,到目前为止我还没有找到令人满意的答案。例如,根据您使用的是 kubectl 还是 k9s,甚至是 tqdm 中的迭代看起来如何,或者您通过日志模块等其他方式记录的内容,结果可能会有很大不同,从根本不显示进度条,到偶尔刷新数十次迭代。我发现获得一致的 kubernetes 日志的唯一方法是在每次迭代时自己打印它们并将 tqdm 输出重定向到其他地方。
例如如下:
import time
import sys
from tqdm import tqdm
iterator = tqdm(range(99), file=open("/dev/null", "w"))
for x in iterator:
print(iterator.__str__())
sys.stdout.flush()
time.sleep(0.2)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
417 次 |
| 最近记录: |