diff options
author | Alexandre Simard <as.simard@outlook.com> | 2022-10-19 17:53:52 +0000 |
---|---|---|
committer | Alexandre Simard <as.simard@outlook.com> | 2022-10-19 17:53:52 +0000 |
commit | 14c1c2b9351f16d43ba4e6b6c9062edad44a6bec (patch) | |
tree | da3eda076b7f7fc9eb179adef8cb5c6079db6f32 /modules/ui.py | |
parent | 46122c4ff6aadc0f96e657f88dbac7bbd9f9bf99 (diff) | |
download | stable-diffusion-webui-gfx803-14c1c2b9351f16d43ba4e6b6c9062edad44a6bec.tar.gz stable-diffusion-webui-gfx803-14c1c2b9351f16d43ba4e6b6c9062edad44a6bec.tar.bz2 stable-diffusion-webui-gfx803-14c1c2b9351f16d43ba4e6b6c9062edad44a6bec.zip |
Show PB texts at same time and earlier
For big tasks (1000+ steps), waiting 1 minute to see ETA is long and this changes it so the number of steps done plays a role in showing the text as well.
Diffstat (limited to 'modules/ui.py')
-rw-r--r-- | modules/ui.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/modules/ui.py b/modules/ui.py index a2dbd41e..0abd177a 100644 --- a/modules/ui.py +++ b/modules/ui.py @@ -261,14 +261,14 @@ def wrap_gradio_call(func, extra_outputs=None): return f
-def calc_time_left(progress, threshold, label, force_display):
+def calc_time_left(progress, threshold, label, force_display, showTime):
if progress == 0:
return ""
else:
time_since_start = time.time() - shared.state.time_start
eta = (time_since_start/progress)
eta_relative = eta-time_since_start
- if (eta_relative > threshold and progress > 0.02) or force_display:
+ if (eta_relative > threshold and showTime) or force_display:
if eta_relative > 3600:
return label + time.strftime('%H:%M:%S', time.gmtime(eta_relative))
elif eta_relative > 60:
@@ -290,7 +290,10 @@ def check_progress_call(id_part): if shared.state.sampling_steps > 0:
progress += 1 / shared.state.job_count * shared.state.sampling_step / shared.state.sampling_steps
- time_left = calc_time_left( progress, 1, " ETA: ", shared.state.time_left_force_display )
+ # Show progress percentage and time left at the same moment, and base it also on steps done
+ showPBText = progress >= 0.01 or shared.state.sampling_step >= 10
+
+ time_left = calc_time_left( progress, 1, " ETA: ", shared.state.time_left_force_display, showPBText )
if time_left != "":
shared.state.time_left_force_display = True
@@ -298,7 +301,7 @@ def check_progress_call(id_part): progressbar = ""
if opts.show_progressbar:
- progressbar = f"""<div class='progressDiv'><div class='progress' style="overflow:visible;width:{progress * 100}%;white-space:nowrap;">{" " * 2 + str(int(progress*100))+"%" + time_left if progress > 0.01 else ""}</div></div>"""
+ progressbar = f"""<div class='progressDiv'><div class='progress' style="overflow:visible;width:{progress * 100}%;white-space:nowrap;">{" " * 2 + str(int(progress*100))+"%" + time_left if showPBText else ""}</div></div>"""
image = gr_show(False)
preview_visibility = gr_show(False)
|