2121from executorch .exir .backend .partitioner import Partitioner
2222
2323
24+ def _create_default_partitioner (
25+ minimum_deployment_target : Any = ct .target .iOS15 ,
26+ ) -> CoreMLPartitioner :
27+ return CoreMLPartitioner (
28+ compile_specs = CoreMLBackend .generate_compile_specs (
29+ minimum_deployment_target = minimum_deployment_target
30+ )
31+ )
32+
33+
2434def _get_static_int8_linear_qconfig ():
2535 return ct .optimize .torch .quantization .LinearQuantizerConfig (
2636 global_config = ct .optimize .torch .quantization .ModuleLinearQuantizerConfig (
@@ -43,7 +53,9 @@ def __init__(
4353 ):
4454 super ().__init__ (
4555 quantizer = quantizer
46- or CoreMLQuantizer (quantization_config or _get_static_int8_linear_qconfig ()),
56+ or CoreMLQuantizer (
57+ quantization_config or _get_static_int8_linear_qconfig ()
58+ ),
4759 calibrate = calibrate ,
4860 calibration_samples = calibration_samples ,
4961 is_qat = is_qat ,
@@ -58,11 +70,7 @@ def __init__(
5870 ):
5971 super ().__init__ (
6072 partitioner = partitioner
61- or CoreMLPartitioner (
62- compile_specs = CoreMLBackend .generate_compile_specs (
63- minimum_deployment_target = minimum_deployment_target
64- )
65- ),
73+ or _create_default_partitioner (minimum_deployment_target ),
6674 )
6775
6876
@@ -74,10 +82,8 @@ def __init__(
7482 minimum_deployment_target : Optional [Any ] = ct .target .iOS15 ,
7583 ):
7684 super ().__init__ (
77- default_partitioner_cls = lambda : CoreMLPartitioner (
78- compile_specs = CoreMLBackend .generate_compile_specs (
79- minimum_deployment_target = minimum_deployment_target
80- )
85+ default_partitioner_cls = lambda : _create_default_partitioner (
86+ minimum_deployment_target
8187 ),
8288 partitioners = partitioners ,
8389 edge_compile_config = edge_compile_config ,
0 commit comments