Skip to content

Commit cbff959

Browse files
supriyarfacebook-github-bot
authored andcommitted
[quant] Return default qconfig when backend is 'none' (#38407)
Summary: Pull Request resolved: #38407 We can still run some quantized tests even when fbgemm/qnnpack isn't enabled Test Plan: python test/test_quantization.py Imported from OSS Differential Revision: D21554257 fbshipit-source-id: e4fa8f61f6a6717881c00620ed7938c01ffbf958
1 parent 7f11079 commit cbff959

2 files changed

Lines changed: 4 additions & 10 deletions

File tree

test/quantization/test_quantize_script.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1101,12 +1101,7 @@ class TestQuantizeScriptPTSQOps(JitTestCase):
11011101
for individual ops end to end.
11021102
"""
11031103
def _test_op_impl(self, module, data, quantized_op):
1104-
qengine = torch.backends.quantized.engine
1105-
if qengine == 'none':
1106-
qconfig = default_qconfig
1107-
else:
1108-
qconfig = get_default_qconfig(qengine)
1109-
qconfig_dict = {'': qconfig}
1104+
qconfig_dict = {'': get_default_qconfig(torch.backends.quantized.engine)}
11101105
model = torch.jit.script(module).eval()
11111106
model = quantize_script(model, qconfig_dict, _test_only_eval_fn, [data], inplace=False)
11121107
FileCheck().check(quantized_op) \

torch/quantization/qconfig.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class QConfig(namedtuple('QConfig', ['activation', 'weight'])):
1818
Observer classes have usually reasonable default arguments, but they can be overwritten with `with_args`
1919
method (that behaves like functools.partial):
2020
21-
my_qconfig = QConfig(activation=MinMaxObserver.with_args(dtype=torch.qint8),
21+
my_qconfig = QConfig(activation=MinMaxObserver.with_args(dtype=torch.qint8),
2222
weight=default_observer.with_args(dtype=torch.qint8))
2323
"""
2424
def __new__(cls, activation, weight):
@@ -83,7 +83,7 @@ def get_default_qconfig(backend='fbgemm'):
8383
qconfig = QConfig(activation=HistogramObserver.with_args(reduce_range=False),
8484
weight=default_weight_observer)
8585
else:
86-
raise ValueError("Unknown backend, please specify qconfig manually")
86+
qconfig = default_qconfig
8787
return qconfig
8888

8989
def get_default_qat_qconfig(backend='fbgemm'):
@@ -101,6 +101,5 @@ def get_default_qat_qconfig(backend='fbgemm'):
101101
reduce_range=False),
102102
weight=default_weight_fake_quant)
103103
else:
104-
raise ValueError("Unknown backend, please specify qconfig manually")
105-
104+
qconfig = default_qat_qconfig
106105
return qconfig

0 commit comments

Comments
 (0)