From 676a4b3f65c5be04100d983c52f8ab7880cc5900 Mon Sep 17 00:00:00 2001 From: jlqian98 Date: Wed, 4 Mar 2026 13:14:09 +0800 Subject: [PATCH] fix: resolve GPU memory leak in webui --- webui.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/webui.py b/webui.py index ac9db6b..4b3a4ee 100644 --- a/webui.py +++ b/webui.py @@ -3,6 +3,7 @@ import random import shutil import sys import traceback +import gc from datetime import datetime from pathlib import Path from typing import Literal, Tuple @@ -310,6 +311,9 @@ class AppState: max_merge_duration=max_merge_duration, language=lyric_lang or "Mandarin", ) + gc.collect() + if torch.cuda.is_available(): + torch.cuda.empty_cache() return True, f"preprocess {audio_path} done" except Exception as e: return False, f"preprocess failed: {e}" @@ -343,6 +347,9 @@ class AppState: args.control = control try: svs_process(args, self.svs_config, self.svs_model) + gc.collect() + if torch.cuda.is_available(): + torch.cuda.empty_cache() generated = save_dir / "generated.wav" if not generated.exists(): return False, f"inference finished but {generated} not found", None, prompt_meta_path, target_meta_path