From 30af1f8fb0485f0a78ab35ca629524df35cebff2 Mon Sep 17 00:00:00 2001 From: Disty0 Date: Mon, 14 Jul 2025 13:07:44 +0300 Subject: [PATCH] Use inference_context with SDNQ --- modules/sdnq/__init__.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/modules/sdnq/__init__.py b/modules/sdnq/__init__.py index 69c5f78a9..1a2a8a992 100644 --- a/modules/sdnq/__init__.py +++ b/modules/sdnq/__init__.py @@ -14,6 +14,7 @@ from .dequantizer import dequantizer_dict from .forward import get_forward_func +@devices.inference_context() def sdnq_quantize_layer(layer, weights_dtype="int8", torch_dtype=None, group_size=0, quant_conv=False, use_quantized_matmul=False, use_quantized_matmul_conv=False, dequantize_fp32=False, quantization_device=None, return_device=None, param_name=None): # pylint: disable=unused-argument layer_class_name = layer.__class__.__name__ if layer_class_name in allowed_types: @@ -262,7 +263,8 @@ class SDNQQuantizer(DiffusersQuantizer): return True else: return True - param_value.data = param_value.clone() # safetensors is unable to release the cpu memory without this + with devices.inference_context(): + param_value.data = param_value.clone() # safetensors is unable to release the cpu memory without this return False def check_quantized_param(self, *args, **kwargs) -> bool: @@ -271,6 +273,7 @@ class SDNQQuantizer(DiffusersQuantizer): """ return self.check_if_quantized_param(*args, **kwargs) + @devices.inference_context() def create_quantized_param( # pylint: disable=arguments-differ self, model,