Quantization

Note

若API“是否支持”为“是”,“限制与说明”为“-”,说明此API和原生API支持度保持一致。

API名称 是否支持 限制与说明
torch.ao.quantization.prepare_qat -
torch.ao.quantization.convert -
torch.ao.quantization.QuantStub -
torch.ao.quantization.DeQuantStub -
torch.ao.quantization.QuantWrapper -
torch.ao.quantization.qconfig_mapping.QConfigMapping -
torch.ao.quantization.qconfig_mapping.QConfigMapping.from_dict -
torch.ao.quantization.qconfig_mapping.QConfigMapping.set_global -
torch.ao.quantization.qconfig_mapping.QConfigMapping.set_module_name -
torch.ao.quantization.qconfig_mapping.QConfigMapping.set_module_name_object_type_order -
torch.ao.quantization.qconfig_mapping.QConfigMapping.set_module_name_regex -
torch.ao.quantization.qconfig_mapping.QConfigMapping.set_object_type -
torch.ao.quantization.qconfig_mapping.QConfigMapping.to_dict -
torch.ao.quantization.qconfig_mapping.get_default_qconfig_mapping -
torch.ao.quantization.qconfig_mapping.get_default_qat_qconfig_mapping -
torch.ao.quantization.backend_config.BackendConfig -
torch.ao.quantization.backend_config.BackendConfig.configs -
torch.ao.quantization.backend_config.BackendConfig.from_dict -
torch.ao.quantization.backend_config.BackendConfig.set_backend_pattern_config -
torch.ao.quantization.backend_config.BackendConfig.set_backend_pattern_configs -
torch.ao.quantization.backend_config.BackendConfig.set_name -
torch.ao.quantization.backend_config.BackendConfig.to_dict -
torch.ao.quantization.backend_config.BackendPatternConfig -
torch.ao.quantization.backend_config.BackendPatternConfig.add_dtype_config -
torch.ao.quantization.backend_config.BackendPatternConfig.from_dict -
torch.ao.quantization.backend_config.BackendPatternConfig.set_dtype_configs -
torch.ao.quantization.backend_config.BackendPatternConfig.set_fused_module -
torch.ao.quantization.backend_config.BackendPatternConfig.set_fuser_method -
torch.ao.quantization.backend_config.BackendPatternConfig.set_observation_type -
torch.ao.quantization.backend_config.BackendPatternConfig.set_pattern -
torch.ao.quantization.backend_config.BackendPatternConfig.set_qat_module -
torch.ao.quantization.backend_config.BackendPatternConfig.set_reference_quantized_module -
torch.ao.quantization.backend_config.BackendPatternConfig.set_root_module -
torch.ao.quantization.backend_config.BackendPatternConfig.to_dict -
torch.ao.quantization.backend_config.DTypeConfig -
torch.ao.quantization.backend_config.DTypeConfig.from_dict -
torch.ao.quantization.backend_config.DTypeConfig.to_dict -
torch.ao.quantization.backend_config.DTypeWithConstraints -
torch.ao.quantization.backend_config.ObservationType -
torch.ao.quantization.backend_config.ObservationType.INPUT_OUTPUT_NOT_OBSERVED -
torch.ao.quantization.backend_config.ObservationType.OUTPUT_SHARE_OBSERVER_WITH_INPUT -
torch.ao.quantization.backend_config.ObservationType.OUTPUT_USE_DIFFERENT_OBSERVER_AS_INPUT -
torch.ao.quantization.fx.custom_config.FuseCustomConfig -
torch.ao.quantization.fx.custom_config.FuseCustomConfig.from_dict -
torch.ao.quantization.fx.custom_config.FuseCustomConfig.set_preserved_attributes -
torch.ao.quantization.fx.custom_config.FuseCustomConfig.to_dict -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.from_dict -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_float_to_observed_mapping -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_input_quantized_indexes -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_non_traceable_module_classes -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_non_traceable_module_names -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_output_quantized_indexes -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_preserved_attributes -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_standalone_module_class -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.set_standalone_module_name -
torch.ao.quantization.fx.custom_config.PrepareCustomConfig.to_dict -
torch.ao.quantization.fx.custom_config.ConvertCustomConfig -
torch.ao.quantization.fx.custom_config.ConvertCustomConfig.from_dict -
torch.ao.quantization.fx.custom_config.ConvertCustomConfig.set_observed_to_quantized_mapping -
torch.ao.quantization.fx.custom_config.ConvertCustomConfig.set_preserved_attributes -
torch.ao.quantization.fx.custom_config.ConvertCustomConfig.to_dict -
torch.ao.quantization.fx.custom_config.StandaloneModuleConfigEntry -
torch.ao.quantization.observer.ObserverBase -
torch.ao.quantization.observer.ObserverBase.with_args -
torch.ao.quantization.observer.ObserverBase.with_callable_args -
torch.ao.quantization.observer.MinMaxObserver -
torch.ao.quantization.observer.MinMaxObserver.calculate_qparams -
torch.ao.quantization.observer.MinMaxObserver.forward -
torch.ao.quantization.observer.MinMaxObserver.reset_min_max_vals -
torch.ao.quantization.observer.MovingAverageMinMaxObserver -
torch.ao.quantization.observer.PerChannelMinMaxObserver -
torch.ao.quantization.observer.PerChannelMinMaxObserver.reset_min_max_vals -
torch.ao.quantization.observer.MovingAveragePerChannelMinMaxObserver -
torch.ao.quantization.observer.HistogramObserver -
torch.ao.quantization.observer.PlaceholderObserver -
torch.ao.quantization.observer.RecordingObserver 可能回退至CPU执行
torch.ao.quantization.observer.NoopObserver -
torch.ao.quantization.observer.get_observer_state_dict -
torch.ao.quantization.observer.load_observer_state_dict -
torch.ao.quantization.observer.default_observer -
torch.ao.quantization.observer.default_placeholder_observer -
torch.ao.quantization.observer.default_debug_observer -
torch.ao.quantization.observer.default_weight_observer -
torch.ao.quantization.observer.default_histogram_observer -
torch.ao.quantization.observer.default_per_channel_weight_observer -
torch.ao.quantization.observer.default_dynamic_quant_observer -
torch.ao.quantization.observer.default_float_qparams_observer -
torch.ao.quantization.fake_quantize.FakeQuantize 可能回退至CPU执行
torch.ao.quantization.fake_quantize.FixedQParamsFakeQuantize -
torch.ao.quantization.fake_quantize.FusedMovingAvgObsFakeQuantize 可能回退至CPU执行
torch.ao.quantization.fake_quantize.disable_fake_quant -
torch.ao.quantization.fake_quantize.enable_fake_quant -
torch.ao.quantization.fake_quantize.disable_observer -
torch.ao.quantization.fake_quantize.enable_observer -
torch.ao.quantization.qconfig.QConfig -
torch.ao.quantization.qconfig.default_qconfig -
torch.ao.quantization.qconfig.default_debug_qconfig -
torch.ao.quantization.qconfig.default_per_channel_qconfig -
torch.ao.quantization.qconfig.default_dynamic_qconfig -
torch.ao.quantization.qconfig.float16_dynamic_qconfig -
torch.ao.quantization.qconfig.float16_static_qconfig -
torch.ao.quantization.qconfig.per_channel_dynamic_qconfig -
torch.ao.quantization.qconfig.float_qparams_weight_only_qconfig -
torch.ao.quantization.qconfig.default_qat_qconfig -
torch.ao.quantization.qconfig.default_weight_only_qconfig -
torch.ao.quantization.qconfig.default_activation_only_qconfig -
torch.ao.quantization.qconfig.default_qat_qconfig_v2 -
torch.ao.nn.intrinsic.LinearReLU -
torch.ao.nn.intrinsic.qat.LinearReLU -
torch.ao.nn.intrinsic.qat.ConvBn1d -
torch.ao.nn.intrinsic.qat.ConvBnReLU1d -
torch.ao.nn.intrinsic.qat.ConvBnReLU2d -
torch.ao.nn.intrinsic.qat.update_bn_stats -
torch.ao.nn.intrinsic.qat.freeze_bn_stats 可能回退至CPU执行
torch.ao.nn.qat.Linear -
torch.ao.nn.quantizable.LSTM -
torch.ao.nn.quantized.dynamic.Linear -
torch.ao.nn.quantized.dynamic.LSTM 支持fp32
torch.ao.nn.quantized.dynamic.GRU 支持fp32
torch.ao.nn.quantized.dynamic.RNNCell 支持fp32
torch.ao.nn.quantized.dynamic.LSTMCell 支持fp32
torch.ao.nn.quantized.dynamic.GRUCell 支持fp32
torch.ao.ns._numeric_suite.compare_weights -
torch.ao.ns._numeric_suite.get_logger_dict -
torch.ao.ns._numeric_suite.Logger -
torch.ao.ns._numeric_suite.Logger.forward -
torch.ao.ns._numeric_suite.ShadowLogger -
torch.ao.ns._numeric_suite.ShadowLogger.forward -
torch.ao.ns._numeric_suite.OutputLogger -
torch.ao.ns._numeric_suite.OutputLogger.forward -
torch.ao.ns._numeric_suite.Shadow -
torch.ao.ns._numeric_suite.Shadow.forward -
torch.ao.ns._numeric_suite.Shadow.add 支持bf16,fp16,fp32,fp64,uint8,int8,int16,int32,int64,bool
torch.ao.ns._numeric_suite.Shadow.add_scalar 支持bf16,fp16,fp32,fp64,uint8,int8,int16,int32,int64,bool
torch.ao.ns._numeric_suite.Shadow.mul 支持bf16,fp16,fp32,fp64,uint8,int8,int16,int32,int64,bool
torch.ao.ns._numeric_suite.Shadow.mul_scalar 支持bf16,fp16,fp32,fp64,uint8,int8,int16,int32,int64,bool
torch.ao.ns._numeric_suite.Shadow.cat 支持bf16,fp16,fp32,fp64,uint8,int8,int16,int32,int64,bool
torch.ao.ns._numeric_suite.Shadow.add_relu 支持bf16,fp16,fp32,uint8,int8,int32,int64
torch.ao.ns._numeric_suite.prepare_model_with_stubs -
torch.ao.ns._numeric_suite.compare_model_stub -
torch.ao.ns._numeric_suite.get_matching_activations -
torch.ao.ns._numeric_suite.prepare_model_outputs -
torch.ao.ns._numeric_suite.compare_model_outputs -
torch.ao.ns._numeric_suite_fx.OutputLogger -
torch.ao.ns._numeric_suite_fx.OutputLogger.forward -
torch.ao.ns._numeric_suite_fx.OutputComparisonLogger -
torch.ao.ns._numeric_suite_fx.OutputComparisonLogger.forward -
torch.ao.ns._numeric_suite_fx.NSTracer -
torch.ao.ns._numeric_suite_fx.NSTracer.is_leaf_module -
torch.ao.ns._numeric_suite_fx.extract_weights -
torch.ao.ns._numeric_suite_fx.add_loggers -
torch.ao.ns._numeric_suite_fx.extract_logger_info -
torch.ao.ns._numeric_suite_fx.add_shadow_loggers -
torch.ao.ns._numeric_suite_fx.extract_shadow_logger_info -
torch.ao.ns._numeric_suite_fx.extend_logger_results_with_comparison -
torch.ao.ns._numeric_suite_fx.prepare_n_shadows_model -
torch.ao.ns._numeric_suite_fx.loggers_set_enabled -
torch.ao.ns._numeric_suite_fx.loggers_set_save_activations -
torch.ao.ns._numeric_suite_fx.convert_n_shadows_model -
torch.ao.ns._numeric_suite_fx.extract_results_n_shadows_model -
torch.ao.ns._numeric_suite_fx.print_comparisons_n_shadows_model -
torch.ao.ns.fx.utils.compute_sqnr -
torch.ao.quantization.get_default_qat_qconfig 该API为Quantization Aware Training依赖接口,未在PyTorch对外文档中呈现,具体使用请参考LINK
在aarch64系统中只能使用qnnpack backend