aboutsummaryrefslogtreecommitdiffstats
path: root/modules/call_queue.py
diff options
context:
space:
mode:
authorAUTOMATIC1111 <16777216c@gmail.com>2023-07-31 19:01:53 +0000
committerAUTOMATIC1111 <16777216c@gmail.com>2023-07-31 19:03:05 +0000
commitc10633f93a646b06f62bf1b24adba52f539dd6b6 (patch)
tree64f3f80158700f24f8f6126f7a35b8ce3f700da3 /modules/call_queue.py
parent0d577aba26c6eb3b47c6dbef6605830d26c375ed (diff)
downloadstable-diffusion-webui-gfx803-c10633f93a646b06f62bf1b24adba52f539dd6b6.tar.gz
stable-diffusion-webui-gfx803-c10633f93a646b06f62bf1b24adba52f539dd6b6.tar.bz2
stable-diffusion-webui-gfx803-c10633f93a646b06f62bf1b24adba52f539dd6b6.zip
fix memory leak when generation fails
Diffstat (limited to 'modules/call_queue.py')
-rw-r--r--modules/call_queue.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/call_queue.py b/modules/call_queue.py
index 61aa240f..f2eb17d6 100644
--- a/modules/call_queue.py
+++ b/modules/call_queue.py
@@ -3,7 +3,7 @@ import html
import threading
import time
-from modules import shared, progress, errors
+from modules import shared, progress, errors, devices
queue_lock = threading.Lock()
@@ -75,6 +75,8 @@ def wrap_gradio_call(func, extra_outputs=None, add_stats=False):
error_message = f'{type(e).__name__}: {e}'
res = extra_outputs_array + [f"<div class='error'>{html.escape(error_message)}</div>"]
+ devices.torch_gc()
+
shared.state.skipped = False
shared.state.interrupted = False
shared.state.job_count = 0