mct-nightly 2.2.0.20241222.533__py3-none-any.whl → 2.2.0.20241224.532__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mct_nightly-2.2.0.20241222.533.dist-info → mct_nightly-2.2.0.20241224.532.dist-info}/METADATA +1 -1
- {mct_nightly-2.2.0.20241222.533.dist-info → mct_nightly-2.2.0.20241224.532.dist-info}/RECORD +29 -28
- model_compression_toolkit/__init__.py +1 -1
- model_compression_toolkit/core/common/graph/base_graph.py +1 -1
- model_compression_toolkit/core/common/graph/base_node.py +3 -3
- model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +4 -4
- model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +2 -2
- model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py +1 -0
- model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py +4 -5
- model_compression_toolkit/target_platform_capabilities/schema/v1.py +66 -172
- model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -1
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attach2fw.py +56 -0
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attach2keras.py +107 -0
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attach2pytorch.py +91 -0
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +1 -1
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +7 -4
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +50 -51
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +54 -52
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +57 -53
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py +52 -51
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py +53 -51
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py +59 -57
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py +54 -52
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +90 -83
- model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +26 -24
- model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +57 -55
- model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -67
- model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -30
- {mct_nightly-2.2.0.20241222.533.dist-info → mct_nightly-2.2.0.20241224.532.dist-info}/LICENSE.md +0 -0
- {mct_nightly-2.2.0.20241222.533.dist-info → mct_nightly-2.2.0.20241224.532.dist-info}/WHEEL +0 -0
- {mct_nightly-2.2.0.20241222.533.dist-info → mct_nightly-2.2.0.20241224.532.dist-info}/top_level.txt +0 -0
{mct_nightly-2.2.0.20241222.533.dist-info → mct_nightly-2.2.0.20241224.532.dist-info}/RECORD
RENAMED
@@ -1,4 +1,4 @@
|
|
1
|
-
model_compression_toolkit/__init__.py,sha256=
|
1
|
+
model_compression_toolkit/__init__.py,sha256=9suCm_ya-q7binwaiEyGExSDb8bJgOWwJ3wBnV_el2Y,1573
|
2
2
|
model_compression_toolkit/constants.py,sha256=i_R6uXBfO1ph_X6DNJych2x59SUojfJbn7dNjs_mZnc,3846
|
3
3
|
model_compression_toolkit/defaultdict.py,sha256=LSc-sbZYXENMCw3U9F4GiXuv67IKpdn0Qm7Fr11jy-4,2277
|
4
4
|
model_compression_toolkit/logger.py,sha256=3DByV41XHRR3kLTJNbpaMmikL8icd9e1N-nkQAY9oDk,4567
|
@@ -32,8 +32,8 @@ model_compression_toolkit/core/common/fusion/__init__.py,sha256=Rf1RcYmelmdZmBV5
|
|
32
32
|
model_compression_toolkit/core/common/fusion/graph_fuser.py,sha256=5VkHB2fW0ohfPQmISz6o4fCMV8QyFdj5_kU51lN0JS8,6214
|
33
33
|
model_compression_toolkit/core/common/fusion/layer_fusing.py,sha256=lOubqpc18TslhXZijWUJQAa1c3jIB2S-M-5HK78wJPQ,5548
|
34
34
|
model_compression_toolkit/core/common/graph/__init__.py,sha256=Xr-Lt_qXMdrCnnOaUS_OJP_3iTTGfPCLf8_vSrQgCs0,773
|
35
|
-
model_compression_toolkit/core/common/graph/base_graph.py,sha256=
|
36
|
-
model_compression_toolkit/core/common/graph/base_node.py,sha256=
|
35
|
+
model_compression_toolkit/core/common/graph/base_graph.py,sha256=6jlwj4WDT3XJKf1QQ4Aougswhl-Xx51QzV58CePbjVg,37818
|
36
|
+
model_compression_toolkit/core/common/graph/base_node.py,sha256=kENyhUfHuU0LiYJ1EiCPmtfOA5UANYteeS7JIbpLiHI,31886
|
37
37
|
model_compression_toolkit/core/common/graph/edge.py,sha256=buoSEUZwilWBK3WeBKpJ-GeDaUA1SDdOHxDpxU_bGpk,3784
|
38
38
|
model_compression_toolkit/core/common/graph/functional_node.py,sha256=GH5wStmw8SoAj5IdT_-ItN1Meo_P5NUTt_5bgJC4fak,3935
|
39
39
|
model_compression_toolkit/core/common/graph/graph_matchers.py,sha256=CrDoHYq4iPaflgJWmoJ1K4ziLrRogJvFTVWg8P0UcDU,4744
|
@@ -111,7 +111,7 @@ model_compression_toolkit/core/common/quantization/quantization_fn_selection.py,
|
|
111
111
|
model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py,sha256=MwIOBZ4BlZSTIOG75PDvlI3JmZ6t8YjPc1VP9Adei60,3847
|
112
112
|
model_compression_toolkit/core/common/quantization/quantize_graph_weights.py,sha256=N005MSvx8UypVpa7XrxNrB2G732n2wHj3RmLyjTgd3I,2728
|
113
113
|
model_compression_toolkit/core/common/quantization/quantize_node.py,sha256=cdzGNWfT4MRogIU8ehs0tr3lVjnzAI-jeoS9b4TwVBo,2854
|
114
|
-
model_compression_toolkit/core/common/quantization/set_node_quantization_config.py,sha256=
|
114
|
+
model_compression_toolkit/core/common/quantization/set_node_quantization_config.py,sha256=94CQga1cg9zCHju8zBbuZYaXUR1wbbOjXHzzAwFxgUU,21269
|
115
115
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py,sha256=eCDGwsWYLU6z7qbEVb4TozMW_nd5VEP_iCJ6PcvyEPw,1486
|
116
116
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py,sha256=fzUvqmXVgzp_IV5ER-20kKzl4m8U_shZsAKs-ehhjFo,23887
|
117
117
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py,sha256=RL-PklAjGyC-26anSt8fU07a6pB_LBQFQy9o4e9giN0,8739
|
@@ -144,7 +144,7 @@ model_compression_toolkit/core/common/substitutions/linear_collapsing_substituti
|
|
144
144
|
model_compression_toolkit/core/common/substitutions/remove_identity.py,sha256=TKU1TIU52UIkVnl0EZvWnDhLV9nIVZ4hqi-w1i4NXMk,2637
|
145
145
|
model_compression_toolkit/core/common/substitutions/residual_collapsing.py,sha256=N82mso5j3EJQlKt9EMHjjEJ67FmdGQeCfN8U5grOFXo,4830
|
146
146
|
model_compression_toolkit/core/common/substitutions/scale_equalization.py,sha256=p57u25qdW2pimxzGwgMXEBV4S-LzXuTVAlIM7830WfU,10966
|
147
|
-
model_compression_toolkit/core/common/substitutions/shift_negative_activation.py,sha256=
|
147
|
+
model_compression_toolkit/core/common/substitutions/shift_negative_activation.py,sha256=H-8gvU7em4gVUp_EYAi6Fa-fgOQ_ICJTA3Z68or2qpI,30069
|
148
148
|
model_compression_toolkit/core/common/substitutions/softmax_shift.py,sha256=R-0ZqhYAuZLEFWHvB2UTPm52L6gWHGdRdEnwGxKSeGI,2625
|
149
149
|
model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py,sha256=aXzUOJfgKPfQpEGfiIun26fgfCqazBG1mBpzoc4Ezxs,3477
|
150
150
|
model_compression_toolkit/core/common/substitutions/weights_activation_split.py,sha256=h85L2VlDOqbLd-N98wA3SdYWiblBgSsPceNuLanJd70,4737
|
@@ -431,18 +431,19 @@ model_compression_toolkit/target_platform_capabilities/__init__.py,sha256=cco4Tm
|
|
431
431
|
model_compression_toolkit/target_platform_capabilities/constants.py,sha256=iJXGy5um7vhC84Me4ld6EHMhy7jPks0T9ItZX23si6s,1519
|
432
432
|
model_compression_toolkit/target_platform_capabilities/immutable.py,sha256=YhROBiXEIB3TU-bAFrnL3qbAsb1yuWPBAQ_CLOJbYUU,1827
|
433
433
|
model_compression_toolkit/target_platform_capabilities/schema/__init__.py,sha256=pKAdbTCFM_2BrZXUtTIw0ouKotrWwUDF_hP3rPwCM2k,696
|
434
|
-
model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py,sha256=
|
435
|
-
model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py,sha256=
|
436
|
-
model_compression_toolkit/target_platform_capabilities/schema/v1.py,sha256=
|
437
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py,sha256=
|
438
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py,sha256=1Glr4qKDJfdk5TwM5fzZ12XzgbpQFioDOxb475905gk,2013
|
439
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py,sha256=TDJ65oCoMCVf2vqOlyioAZeOaPAILhNHcxLVMfszoII,1346
|
434
|
+
model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py,sha256=E6Zz8boibgfq8EVpZWyl0TOdFrv9qrwiVHUzYPIKVrQ,528
|
435
|
+
model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py,sha256=ZDFN2N4dRRP6qs0HxsHXEJbZCwYByo3JL9sBCJolDBs,4656
|
436
|
+
model_compression_toolkit/target_platform_capabilities/schema/v1.py,sha256=GsToWecNswbQCnLPBNsFBK5uX8B69jN9N-tXEmmU6WI,25223
|
437
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py,sha256=1FXmDVSqm-dr3xzH4vRo4NmAgyzBZjqHo5l63MUq4r0,1403
|
440
438
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py,sha256=WCP1wfFZgM4eFm-pPeUinr5R_aSx5qwfSQqLZCXUNBA,1513
|
439
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attach2fw.py,sha256=GK_eI9Oq-kgBdfXm0AwgXkYgGKL0FEthqrTd0X_XWg0,2872
|
440
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attach2keras.py,sha256=mkTjg9JZEKMT_QHtlQPGUZvcuF0lofZUs1DU1h43JjM,6671
|
441
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attach2pytorch.py,sha256=cn2sP9fnHJ8qfR1AMTwW58mXLOcdT6M7xyE3TLRjnY0,5443
|
441
442
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py,sha256=jfhszvuD2Fyy6W2KjlLzXBQKFzTqGAaDZeFVr4-ONQw,8776
|
442
443
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py,sha256=fIheShGOnxWYKqT8saHpBJqOU5RG_1Hp9qHry7IviIw,2115
|
443
444
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py,sha256=Cl6-mACpje2jM8RJkibbqE3hvTkFR3r26-lW021mIiA,4019
|
444
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py,sha256=
|
445
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py,sha256=
|
445
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py,sha256=Yg3sUzn4lpZn7bvNeDU4pO7_Jgr9cuqB66SqNMTh5_U,6867
|
446
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py,sha256=eRRCUqy0yXd3_xrufd7jjaU6hIIXphzcT8yWqvRr8l8,9994
|
446
447
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py,sha256=FvrYI0Qy7DCmDp2gyUYyCZq5pY84JgLtJqSIiVTJ8Ss,1030
|
447
448
|
model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
448
449
|
model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py,sha256=CWind2Kd91lzBTRAh1A9sHuNw17xXhMb3gV436RpK8c,3033
|
@@ -450,49 +451,49 @@ model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__i
|
|
450
451
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py,sha256=yIWwvfTpiT0wRf7GwPgK9elKbGh46jxCrkcLVEjvesU,6081
|
451
452
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py,sha256=eVIRpx5O0JQI7TSdw5JAWtwrG3MQ8-7hYThQvB9da5c,1528
|
452
453
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py,sha256=1mMOREEMoNHu_KTMGDp4crN61opKWX6aFn1DrDLvqcc,717
|
453
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py,sha256=
|
454
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py,sha256=S2KHNfxzj6X_xFprLIYqYC3dcozHYTlsiW1LqVBnQkc,11198
|
454
455
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py,sha256=DiEVKde6bZiRDcoeTKzbrfjFIDVEeES0Q_Ms50NbW7Y,6568
|
455
456
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py,sha256=rQY-ApvLKo9LbN2uKO2NsdOgX49TKcED3o8mBxWAFKw,5594
|
456
457
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py,sha256=vFDyiMymNZSRCdTgAyWn4A-tZD3vzze_PTLBSF2OYe8,721
|
457
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py,sha256=
|
458
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py,sha256=gW_Yw7w2eQAb70Nqghv1btc9CTubMVpzjt7b2kxj-Hs,11101
|
458
459
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py,sha256=I3NnmCBSB6KB8ECXJsfXw6FD-ONj39RXL-yB2-nE1xI,6577
|
459
460
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py,sha256=R6ZDXT2bwAmdZfmXxIoCo7-_h7oGfyr6cZoZmBJdPa0,5713
|
460
461
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py,sha256=NUuczImqUxzdfflqSdqkeAN8aCU6Tuiu6U0Fnj9Tzmw,721
|
461
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py,sha256=
|
462
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py,sha256=7fplCIkjNlPXgJQiYJlWeHBBOxDcjKjDMD23h0g_nt0,10887
|
462
463
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py,sha256=ovHI4lvlcP_haolXmL8TvIpPi9tglhdUxRxNxuf6QPk,6581
|
463
464
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py,sha256=PgNAmXZx7hg46KwR16laU7jr2U35rnHiTcR25RaLxd0,5732
|
464
465
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/__init__.py,sha256=vKWAoQ2KkhuptS5HZB50zHG6KY8wHpHTxPugw_nGCRo,717
|
465
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py,sha256=
|
466
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py,sha256=et3hrgpF2hm5zqfvhSc2B4peIYmBddGbKVF2eQb7Q4U,11273
|
466
467
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py,sha256=i6oEt_3FAeccU9QkVCVxWZf2aX17IExAljR8y13k9P4,6663
|
467
468
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py,sha256=Iwi-D_0iC19Lo3yWduuaItezXFrRxRhowUY4jGOtwXk,5700
|
468
469
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/__init__.py,sha256=wUk4Xsg7jpxOWYjq2K3WUwLcI185p_sVPK-ttG0ydhA,721
|
469
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py,sha256=
|
470
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py,sha256=DCuslGtM4NT-NvPK8dpINa0t9gIjyP4325YaqtNukSk,11153
|
470
471
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py,sha256=e3su6KmNsc2ziP3eEICp-tcnY9YmGPiLoMJ3TreqVx4,6671
|
471
472
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py,sha256=9W-pjOhONqgym1t2vDRTo7x-JQiVlxQsAKAG6HdAww4,5707
|
472
473
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/__init__.py,sha256=gAeebYCKyIXH9-Qwze7FwvTihudzAHk_Qsg94fQbkjQ,717
|
473
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py,sha256=
|
474
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py,sha256=ngIP70u-_tA-XKXu4pTbXu2GDaWjnYwz08BCRdOeVlQ,13228
|
474
475
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py,sha256=vbBgQfEd5mLnJKGX2CO-KA0x87_qTmDH7HbbtLgCIfg,6881
|
475
476
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py,sha256=oDG_Ln0mPmt8p5eKrjGQlHLHCApErLHazny9bIfu3iI,5968
|
476
477
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/__init__.py,sha256=C2kwyDE1-rtukkbNSoKRv9q8Nt2GOCaBbl0BdOr3goA,721
|
477
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py,sha256=
|
478
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py,sha256=pPEXKAzLKp7AWhN2ysIJElAcY7FID1dVTLxDvz5xAOo,12050
|
478
479
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py,sha256=hHK7MY6xfSCRnXQ6Qz0hbN_hM18f-gf3uZmxdl44khU,6679
|
479
480
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py,sha256=GmS3CuSQPwLSgPdruXCSHN49_fRiRBn9PKA9CPmtqM8,5789
|
480
481
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/__init__.py,sha256=tHTUvsaerSfbe22pU0kIDauPpFD7Pq5EmZytVIDkHz4,717
|
481
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py,sha256=
|
482
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py,sha256=Ya0IZVDO6TAe_fBGV6Rg1BvENkzeCsbULaEjKDtzjck,17779
|
482
483
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py,sha256=9LToJzBBCXEZ5AOj2zzJMRr6S0uwlKKEg3stLK2u1fw,8341
|
483
484
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py,sha256=v1Fyp9YKWfdxF9tLfD0fAV41mqEH0S9z-jqr4QFH5CQ,7221
|
484
485
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
485
486
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py,sha256=is00rNrDmmirYsyMtMkWz0DwOA92-x7hAJwpd6z1n2E,2806
|
486
487
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py,sha256=CXC-HQolSDu7j8V-Xm-SWGCd74gXB3XnAkEhI_TVbIQ,1516
|
487
488
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py,sha256=t4JKsPcor-7KSCKzIwuaBv0NLNwfhuewAQGlDl6iBeo,717
|
488
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py,sha256=
|
489
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py,sha256=yNwypIat2hVgwDKitw7enfPJYzvOThB2E76dOT0jglY,8531
|
489
490
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py,sha256=JKJy4k7TBCRZQ_cSWNhEdvyg5ylvIcpjU_6GALBOaFI,4461
|
490
491
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py,sha256=x5ooqCuKtW6ULenncjwSs_HTps8yUylOBKOzpgJ4yYI,3788
|
491
492
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
492
493
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py,sha256=_tf41m40fbax27y5A5JoGHw4p5NY-Kb3c8oxSTnRD_E,2802
|
493
494
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py,sha256=LIUUQn42YU7oD2YfnEgP0gfqm7Hq9e0fD_8418aKzKI,1511
|
494
495
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py,sha256=t4JKsPcor-7KSCKzIwuaBv0NLNwfhuewAQGlDl6iBeo,717
|
495
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py,sha256=
|
496
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py,sha256=U-I3eFBeRhc_BC16RyP_i_8e6ZP-X0klCa10k8QvddE,10383
|
496
497
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py,sha256=4vQG9uaV5bAte1VP8oMT5dwiDisW84F1B-de0BdBusY,6808
|
497
498
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py,sha256=uG27HAOrD-JMSDXaEycDJeFGqhF8J3ZqKI4CJCW6zA4,5934
|
498
499
|
model_compression_toolkit/trainable_infrastructure/__init__.py,sha256=uewpvlPkH9mBFt8IxoAgIfz6iEcvWbOImm_fb6_BxD8,1543
|
@@ -559,8 +560,8 @@ model_compression_toolkit/xquant/pytorch/model_analyzer.py,sha256=b93o800yVB3Z-i
|
|
559
560
|
model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py,sha256=bOc-hFL3gdoSM1Th_S2N_-9JJSlPGpZCTx_QLJHS6lg,3388
|
560
561
|
model_compression_toolkit/xquant/pytorch/similarity_functions.py,sha256=CERxq5K8rqaiE-DlwhZBTUd9x69dtYJlkHOPLB54vm8,2354
|
561
562
|
model_compression_toolkit/xquant/pytorch/tensorboard_utils.py,sha256=mkoEktLFFHtEKzzFRn_jCnxjhJolK12TZ5AQeDHzUO8,9767
|
562
|
-
mct_nightly-2.2.0.
|
563
|
-
mct_nightly-2.2.0.
|
564
|
-
mct_nightly-2.2.0.
|
565
|
-
mct_nightly-2.2.0.
|
566
|
-
mct_nightly-2.2.0.
|
563
|
+
mct_nightly-2.2.0.20241224.532.dist-info/LICENSE.md,sha256=aYSSIb-5AFPeITTvXm1UAoe0uYBiMmSS8flvXaaFUks,10174
|
564
|
+
mct_nightly-2.2.0.20241224.532.dist-info/METADATA,sha256=TevkRWHqm2UgHf34bwK7NWHCKt4tIUfdOvpVaA4-CIU,26453
|
565
|
+
mct_nightly-2.2.0.20241224.532.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
566
|
+
mct_nightly-2.2.0.20241224.532.dist-info/top_level.txt,sha256=gsYA8juk0Z-ZmQRKULkb3JLGdOdz8jW_cMRjisn9ga4,26
|
567
|
+
mct_nightly-2.2.0.20241224.532.dist-info/RECORD,,
|
@@ -27,4 +27,4 @@ from model_compression_toolkit import data_generation
|
|
27
27
|
from model_compression_toolkit import pruning
|
28
28
|
from model_compression_toolkit.trainable_infrastructure.keras.load_model import keras_load_quantized_model
|
29
29
|
|
30
|
-
__version__ = "2.2.0.
|
30
|
+
__version__ = "2.2.0.20241224.000532"
|
@@ -105,7 +105,7 @@ class Graph(nx.MultiDiGraph, GraphSearches):
|
|
105
105
|
Logger.critical(f'MCT does not support optimizing Keras custom layers. Found a layer of type {n.type}. '
|
106
106
|
' Please add the custom layer to Target Platform Capabilities (TPC), or file a feature '
|
107
107
|
'request or an issue if you believe this should be supported.') # pragma: no cover
|
108
|
-
if any([qc.default_weight_attr_config.enable_weights_quantization for qc in n.get_qco(tpc).
|
108
|
+
if any([qc.default_weight_attr_config.enable_weights_quantization for qc in n.get_qco(tpc).quantization_configurations]):
|
109
109
|
Logger.critical(f'Layer identified: {n.type}. MCT does not support weight quantization for Keras custom layers.') # pragma: no cover
|
110
110
|
|
111
111
|
self.tpc = tpc
|
@@ -582,12 +582,12 @@ class BaseNode:
|
|
582
582
|
"""
|
583
583
|
# Filter quantization config options that don't match the graph.
|
584
584
|
_base_config = node_qc_options.base_config
|
585
|
-
_node_qc_options = node_qc_options.
|
585
|
+
_node_qc_options = node_qc_options.quantization_configurations
|
586
586
|
if len(next_nodes):
|
587
587
|
next_nodes_qc_options = [_node.get_qco(tpc) for _node in next_nodes]
|
588
588
|
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
589
589
|
for qc_opts in next_nodes_qc_options
|
590
|
-
for op_cfg in qc_opts.
|
590
|
+
for op_cfg in qc_opts.quantization_configurations])
|
591
591
|
|
592
592
|
# Filter node's QC options that match next nodes input bit-width.
|
593
593
|
_node_qc_options = [_option for _option in _node_qc_options
|
@@ -599,7 +599,7 @@ class BaseNode:
|
|
599
599
|
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
600
600
|
for qc_opt in next_nodes_qc_options]):
|
601
601
|
# base_config activation bits doesn't match next node supported input bit-width -> replace with
|
602
|
-
# a qco from
|
602
|
+
# a qco from quantization_configurations with maximum activation bit-width.
|
603
603
|
if len(_node_qc_options) > 0:
|
604
604
|
output_act_bitwidth = {qco.activation_n_bits: i for i, qco in enumerate(_node_qc_options)}
|
605
605
|
_base_config = _node_qc_options[output_act_bitwidth[max(output_act_bitwidth)]]
|
@@ -101,7 +101,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
101
101
|
"""
|
102
102
|
# Filter quantization config options that don't match the graph.
|
103
103
|
_base_config = node_qc_options.base_config
|
104
|
-
_node_qc_options = node_qc_options.
|
104
|
+
_node_qc_options = node_qc_options.quantization_configurations
|
105
105
|
|
106
106
|
# Build next_nodes list by appending to the node's next nodes list all nodes that are quantization preserving.
|
107
107
|
_next_nodes = graph.get_next_nodes(node)
|
@@ -109,7 +109,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
109
109
|
while len(_next_nodes):
|
110
110
|
n = _next_nodes.pop(0)
|
111
111
|
qco = n.get_qco(tpc)
|
112
|
-
qp = [qc.quantization_preserving for qc in qco.
|
112
|
+
qp = [qc.quantization_preserving for qc in qco.quantization_configurations]
|
113
113
|
if not all(qp) and any(qp):
|
114
114
|
Logger.error(f'Attribute "quantization_preserving" should be the same for all QuantizaionConfigOptions in {n}.')
|
115
115
|
if qp[0]:
|
@@ -120,7 +120,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
120
120
|
next_nodes_qc_options = [_node.get_qco(tpc) for _node in next_nodes]
|
121
121
|
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
122
122
|
for qc_opts in next_nodes_qc_options
|
123
|
-
for op_cfg in qc_opts.
|
123
|
+
for op_cfg in qc_opts.quantization_configurations])
|
124
124
|
|
125
125
|
# Filter node's QC options that match next nodes input bit-width.
|
126
126
|
_node_qc_options = [_option for _option in _node_qc_options
|
@@ -132,7 +132,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
132
132
|
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
133
133
|
for qc_opt in next_nodes_qc_options]):
|
134
134
|
# base_config activation bits doesn't match next node supported input bit-width -> replace with
|
135
|
-
# a qco from
|
135
|
+
# a qco from quantization_configurations with maximum activation bit-width.
|
136
136
|
if len(_node_qc_options) > 0:
|
137
137
|
output_act_bitwidth = {qco.activation_n_bits: i for i, qco in enumerate(_node_qc_options)}
|
138
138
|
_base_config = _node_qc_options[output_act_bitwidth[max(output_act_bitwidth)]]
|
@@ -392,7 +392,7 @@ def shift_negative_function(graph: Graph,
|
|
392
392
|
bypass_candidate_qc.activation_quantization_cfg.activation_quantization_params[SIGNED] = False
|
393
393
|
graph.shift_stats_collector(bypass_node, np.array(shift_value))
|
394
394
|
|
395
|
-
add_node_qco = add_node.get_qco(graph.tpc).
|
395
|
+
add_node_qco = add_node.get_qco(graph.tpc).quantization_configurations
|
396
396
|
for op_qc_idx, candidate_qc in enumerate(add_node.candidates_quantization_cfg):
|
397
397
|
for attr in add_node.get_node_weights_attributes():
|
398
398
|
candidate_qc.weights_quantization_cfg.get_attr_config(attr).enable_weights_quantization = False
|
@@ -535,7 +535,7 @@ def apply_shift_negative_correction(graph: Graph,
|
|
535
535
|
# Skip substitution if QuantizationMethod is uniform.
|
536
536
|
node_qco = n.get_qco(graph.tpc)
|
537
537
|
if any([op_qc.activation_quantization_method is QuantizationMethod.UNIFORM
|
538
|
-
for op_qc in node_qco.
|
538
|
+
for op_qc in node_qco.quantization_configurations]):
|
539
539
|
continue
|
540
540
|
|
541
541
|
if snc_node_types.apply(n):
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import model_compression_toolkit.target_platform_capabilities.schema.v1 as schema
|
2
2
|
|
3
|
+
OperatorSetNames = schema.OperatorSetNames
|
3
4
|
Signedness = schema.Signedness
|
4
5
|
AttributeQuantizationConfig = schema.AttributeQuantizationConfig
|
5
6
|
OpQuantizationConfig = schema.OpQuantizationConfig
|
@@ -64,10 +64,10 @@ def get_default_op_quantization_config(tp_model: TargetPlatformModel) -> OpQuant
|
|
64
64
|
Raises:
|
65
65
|
AssertionError: If the default quantization configuration list contains more than one configuration option.
|
66
66
|
"""
|
67
|
-
assert len(tp_model.default_qco.
|
67
|
+
assert len(tp_model.default_qco.quantization_configurations) == 1, \
|
68
68
|
f"Default quantization configuration options must contain only one option, " \
|
69
|
-
f"but found {len(tp_model.default_qco.
|
70
|
-
return tp_model.default_qco.
|
69
|
+
f"but found {len(tp_model.default_qco.quantization_configurations)} configurations." # pragma: no cover
|
70
|
+
return tp_model.default_qco.quantization_configurations[0]
|
71
71
|
|
72
72
|
|
73
73
|
def is_opset_in_model(tp_model: TargetPlatformModel, opset_name: str) -> bool:
|
@@ -82,8 +82,7 @@ def is_opset_in_model(tp_model: TargetPlatformModel, opset_name: str) -> bool:
|
|
82
82
|
bool: True if an OperatorsSet with the given name exists in the target platform model,
|
83
83
|
otherwise False.
|
84
84
|
"""
|
85
|
-
return opset_name in [x.name for x in tp_model.operator_set]
|
86
|
-
|
85
|
+
return tp_model.operator_set is not None and opset_name in [x.name for x in tp_model.operator_set]
|
87
86
|
|
88
87
|
def get_opset_by_name(tp_model: TargetPlatformModel, opset_name: str) -> Optional[OperatorsSetBase]:
|
89
88
|
"""
|