Merge pull request #11749 from akx/mps-gc-fix-2

Don't do MPS GC when there's a latent
This commit is contained in:
AUTOMATIC1111 2023-07-12 16:57:07 +03:00 committed by GitHub
commit e5ca987778
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -5,7 +5,7 @@ import platform
from modules.sd_hijack_utils import CondFunc from modules.sd_hijack_utils import CondFunc
from packaging import version from packaging import version
log = logging.getLogger() log = logging.getLogger(__name__)
# before torch version 1.13, has_mps is only available in nightly pytorch and macOS 12.3+, # before torch version 1.13, has_mps is only available in nightly pytorch and macOS 12.3+,
@ -30,6 +30,10 @@ has_mps = check_for_mps()
def torch_mps_gc() -> None: def torch_mps_gc() -> None:
try: try:
from modules.shared import state
if state.current_latent is not None:
log.debug("`current_latent` is set, skipping MPS garbage collection")
return
from torch.mps import empty_cache from torch.mps import empty_cache
empty_cache() empty_cache()
except Exception: except Exception: