mct-nightly 2.2.0.20241211.531__py3-none-any.whl → 2.2.0.20241213.540__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.20241211.531.dist-info → mct_nightly-2.2.0.20241213.540.dist-info}/METADATA +1 -1
- {mct_nightly-2.2.0.20241211.531.dist-info → mct_nightly-2.2.0.20241213.540.dist-info}/RECORD +21 -21
- model_compression_toolkit/__init__.py +1 -1
- model_compression_toolkit/core/common/graph/base_node.py +3 -2
- model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +3 -2
- model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py +83 -14
- model_compression_toolkit/target_platform_capabilities/schema/v1.py +407 -475
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +5 -3
- model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +5 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +5 -6
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +3 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +3 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py +5 -6
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py +3 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py +5 -6
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py +3 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +9 -9
- model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +2 -2
- {mct_nightly-2.2.0.20241211.531.dist-info → mct_nightly-2.2.0.20241213.540.dist-info}/LICENSE.md +0 -0
- {mct_nightly-2.2.0.20241211.531.dist-info → mct_nightly-2.2.0.20241213.540.dist-info}/WHEEL +0 -0
- {mct_nightly-2.2.0.20241211.531.dist-info → mct_nightly-2.2.0.20241213.540.dist-info}/top_level.txt +0 -0
{mct_nightly-2.2.0.20241211.531.dist-info → mct_nightly-2.2.0.20241213.540.dist-info}/RECORD
RENAMED
@@ -1,4 +1,4 @@
|
|
1
|
-
model_compression_toolkit/__init__.py,sha256=
|
1
|
+
model_compression_toolkit/__init__.py,sha256=CLr_OaMRtKsOBdYNYUxEuaSfCgNbKNXmdcf9Ez6b_7U,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
|
@@ -33,7 +33,7 @@ model_compression_toolkit/core/common/fusion/graph_fuser.py,sha256=5VkHB2fW0ohfP
|
|
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
35
|
model_compression_toolkit/core/common/graph/base_graph.py,sha256=GG13PAtndsMjIqINfrCN6llVkFrg5CBfij4z99ntieU,37815
|
36
|
-
model_compression_toolkit/core/common/graph/base_node.py,sha256=
|
36
|
+
model_compression_toolkit/core/common/graph/base_node.py,sha256=QPV2PWpYGtS2qB-uioYeGEgEEnPuOy-UFOLVyjWWIvg,31877
|
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=ChhXckn8E3Kot6g5R27KD2WSVMzPfqVwkeTJ0UeBdyg,21257
|
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
|
@@ -432,8 +432,8 @@ model_compression_toolkit/target_platform_capabilities/constants.py,sha256=iJXGy
|
|
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
434
|
model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py,sha256=MxEMpEYHpcgGqHMn371jJU6SMCMvV9qXn1NvjQ4XFik,485
|
435
|
-
model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py,sha256=
|
436
|
-
model_compression_toolkit/target_platform_capabilities/schema/v1.py,sha256=
|
435
|
+
model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py,sha256=8Ek7nigw_RYLc5eRjbKr70aqysu_GD_hE1AtcKGi6yg,4610
|
436
|
+
model_compression_toolkit/target_platform_capabilities/schema/v1.py,sha256=R_CjTWFiVja11WzOxRNqlOaj36zRJyaAE5s8FaP-Yx4,29147
|
437
437
|
model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py,sha256=0l1Y2EqivDkWRRRhirSRI3vwUzhUcSTrYgrwKIqO0IM,1548
|
438
438
|
model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py,sha256=1Glr4qKDJfdk5TwM5fzZ12XzgbpQFioDOxb475905gk,2013
|
439
439
|
model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py,sha256=TDJ65oCoMCVf2vqOlyioAZeOaPAILhNHcxLVMfszoII,1346
|
@@ -441,8 +441,8 @@ model_compression_toolkit/target_platform_capabilities/target_platform/targetpla
|
|
441
441
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py,sha256=jfhszvuD2Fyy6W2KjlLzXBQKFzTqGAaDZeFVr4-ONQw,8776
|
442
442
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py,sha256=fIheShGOnxWYKqT8saHpBJqOU5RG_1Hp9qHry7IviIw,2115
|
443
443
|
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=
|
444
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py,sha256=YcHsObQ0RFT-ETwRSqhQil3xPwik0euh_Y5V9bpWD8E,6865
|
445
|
+
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py,sha256=jQ7t1wCOa-h_OCYOCmNVhEwftkbU1O4d7bnd4PgbuLI,9865
|
446
446
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py,sha256=FvrYI0Qy7DCmDp2gyUYyCZq5pY84JgLtJqSIiVTJ8Ss,1030
|
447
447
|
model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
448
448
|
model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py,sha256=CWind2Kd91lzBTRAh1A9sHuNw17xXhMb3gV436RpK8c,3033
|
@@ -450,35 +450,35 @@ model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__i
|
|
450
450
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py,sha256=yIWwvfTpiT0wRf7GwPgK9elKbGh46jxCrkcLVEjvesU,6081
|
451
451
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py,sha256=eVIRpx5O0JQI7TSdw5JAWtwrG3MQ8-7hYThQvB9da5c,1528
|
452
452
|
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
|
453
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py,sha256=W-DxFuYuD6cclQHmHmVdUpILHqTL7VfOKFFosoUtcJw,11317
|
454
454
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py,sha256=DiEVKde6bZiRDcoeTKzbrfjFIDVEeES0Q_Ms50NbW7Y,6568
|
455
455
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py,sha256=rQY-ApvLKo9LbN2uKO2NsdOgX49TKcED3o8mBxWAFKw,5594
|
456
456
|
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=
|
457
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py,sha256=ArqqPg3cxCuRFQzz5lGMrZcLxpx_8n8_6cdFzKNTtDU,11072
|
458
458
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py,sha256=I3NnmCBSB6KB8ECXJsfXw6FD-ONj39RXL-yB2-nE1xI,6577
|
459
459
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py,sha256=R6ZDXT2bwAmdZfmXxIoCo7-_h7oGfyr6cZoZmBJdPa0,5713
|
460
460
|
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=
|
461
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py,sha256=fwbZoIOrQhPXbcC8kAo3Gl_hmLTbr7a2BxiRvB1DxV8,10827
|
462
462
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py,sha256=ovHI4lvlcP_haolXmL8TvIpPi9tglhdUxRxNxuf6QPk,6581
|
463
463
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py,sha256=PgNAmXZx7hg46KwR16laU7jr2U35rnHiTcR25RaLxd0,5732
|
464
464
|
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=
|
465
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py,sha256=3qQ-RQPFjTcE8WM3rzMYe89SFoMtkbJ1f6IjkWUam3Q,11372
|
466
466
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py,sha256=i6oEt_3FAeccU9QkVCVxWZf2aX17IExAljR8y13k9P4,6663
|
467
467
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py,sha256=Iwi-D_0iC19Lo3yWduuaItezXFrRxRhowUY4jGOtwXk,5700
|
468
468
|
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=
|
469
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py,sha256=yANACBcyagUsJ3D8oustmUCVNrKcwFlBMAMTCrQtac4,11124
|
470
470
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py,sha256=e3su6KmNsc2ziP3eEICp-tcnY9YmGPiLoMJ3TreqVx4,6671
|
471
471
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py,sha256=9W-pjOhONqgym1t2vDRTo7x-JQiVlxQsAKAG6HdAww4,5707
|
472
472
|
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=
|
473
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py,sha256=acSYyoS6R6DVHtyExcj93zHz5g3YKiZ71dF6f7N3ygQ,13184
|
474
474
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py,sha256=vbBgQfEd5mLnJKGX2CO-KA0x87_qTmDH7HbbtLgCIfg,6881
|
475
475
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py,sha256=oDG_Ln0mPmt8p5eKrjGQlHLHCApErLHazny9bIfu3iI,5968
|
476
476
|
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=
|
477
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py,sha256=QdicH7CpS7-wUdp4XnYLL9yGmly_RKPifB4sNf1pUNc,12014
|
478
478
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py,sha256=hHK7MY6xfSCRnXQ6Qz0hbN_hM18f-gf3uZmxdl44khU,6679
|
479
479
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py,sha256=GmS3CuSQPwLSgPdruXCSHN49_fRiRBn9PKA9CPmtqM8,5789
|
480
480
|
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=
|
481
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py,sha256=4Gjb_6pSgnCi7xqUYKdUsBBZeRNcrBbQ7wvuprHHIms,17498
|
482
482
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py,sha256=9LToJzBBCXEZ5AOj2zzJMRr6S0uwlKKEg3stLK2u1fw,8341
|
483
483
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py,sha256=v1Fyp9YKWfdxF9tLfD0fAV41mqEH0S9z-jqr4QFH5CQ,7221
|
484
484
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
@@ -492,7 +492,7 @@ model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__i
|
|
492
492
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py,sha256=_tf41m40fbax27y5A5JoGHw4p5NY-Kb3c8oxSTnRD_E,2802
|
493
493
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py,sha256=LIUUQn42YU7oD2YfnEgP0gfqm7Hq9e0fD_8418aKzKI,1511
|
494
494
|
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=
|
495
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py,sha256=D1aMSpT4E-WJ4V3rPfjbl_FNZTuFI3-AGsQiL4-6ujc,10389
|
496
496
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py,sha256=4vQG9uaV5bAte1VP8oMT5dwiDisW84F1B-de0BdBusY,6808
|
497
497
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py,sha256=uG27HAOrD-JMSDXaEycDJeFGqhF8J3ZqKI4CJCW6zA4,5934
|
498
498
|
model_compression_toolkit/trainable_infrastructure/__init__.py,sha256=uewpvlPkH9mBFt8IxoAgIfz6iEcvWbOImm_fb6_BxD8,1543
|
@@ -559,8 +559,8 @@ model_compression_toolkit/xquant/pytorch/model_analyzer.py,sha256=b93o800yVB3Z-i
|
|
559
559
|
model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py,sha256=bOc-hFL3gdoSM1Th_S2N_-9JJSlPGpZCTx_QLJHS6lg,3388
|
560
560
|
model_compression_toolkit/xquant/pytorch/similarity_functions.py,sha256=CERxq5K8rqaiE-DlwhZBTUd9x69dtYJlkHOPLB54vm8,2354
|
561
561
|
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.
|
562
|
+
mct_nightly-2.2.0.20241213.540.dist-info/LICENSE.md,sha256=aYSSIb-5AFPeITTvXm1UAoe0uYBiMmSS8flvXaaFUks,10174
|
563
|
+
mct_nightly-2.2.0.20241213.540.dist-info/METADATA,sha256=_PxYI2q2aQe9fwkTQJ0ec5vjTiBG1lktdkehLb4p7YI,26446
|
564
|
+
mct_nightly-2.2.0.20241213.540.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
565
|
+
mct_nightly-2.2.0.20241213.540.dist-info/top_level.txt,sha256=gsYA8juk0Z-ZmQRKULkb3JLGdOdz8jW_cMRjisn9ga4,26
|
566
|
+
mct_nightly-2.2.0.20241213.540.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.20241213.000540"
|
@@ -24,6 +24,7 @@ from model_compression_toolkit.core.common.quantization.node_quantization_config
|
|
24
24
|
from model_compression_toolkit.logger import Logger
|
25
25
|
from model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema import QuantizationConfigOptions, \
|
26
26
|
OpQuantizationConfig
|
27
|
+
from model_compression_toolkit.target_platform_capabilities.schema.schema_functions import max_input_activation_n_bits
|
27
28
|
from model_compression_toolkit.target_platform_capabilities.target_platform import TargetPlatformCapabilities, LayerFilterParams
|
28
29
|
|
29
30
|
|
@@ -584,7 +585,7 @@ class BaseNode:
|
|
584
585
|
_node_qc_options = node_qc_options.quantization_config_list
|
585
586
|
if len(next_nodes):
|
586
587
|
next_nodes_qc_options = [_node.get_qco(tpc) for _node in next_nodes]
|
587
|
-
next_nodes_supported_input_bitwidth = min([op_cfg
|
588
|
+
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
588
589
|
for qc_opts in next_nodes_qc_options
|
589
590
|
for op_cfg in qc_opts.quantization_config_list])
|
590
591
|
|
@@ -595,7 +596,7 @@ class BaseNode:
|
|
595
596
|
Logger.critical(f"Graph doesn't match TPC bit configurations: {self} -> {next_nodes}.") # pragma: no cover
|
596
597
|
|
597
598
|
# Verify base config match
|
598
|
-
if any([node_qc_options.base_config.activation_n_bits > qc_opt.base_config
|
599
|
+
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
599
600
|
for qc_opt in next_nodes_qc_options]):
|
600
601
|
# base_config activation bits doesn't match next node supported input bit-width -> replace with
|
601
602
|
# a qco from quantization_config_list with maximum activation bit-width.
|
@@ -32,6 +32,7 @@ from model_compression_toolkit.core.common.quantization.quantization_params_fn_s
|
|
32
32
|
get_activation_quantization_params_fn, get_weights_quantization_params_fn
|
33
33
|
from model_compression_toolkit.core.common.quantization.quantization_fn_selection import \
|
34
34
|
get_weights_quantization_fn
|
35
|
+
from model_compression_toolkit.target_platform_capabilities.schema.schema_functions import max_input_activation_n_bits
|
35
36
|
from model_compression_toolkit.target_platform_capabilities.target_platform.targetplatform2framework import TargetPlatformCapabilities
|
36
37
|
from model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema import OpQuantizationConfig, \
|
37
38
|
QuantizationConfigOptions
|
@@ -117,7 +118,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
117
118
|
|
118
119
|
if len(next_nodes):
|
119
120
|
next_nodes_qc_options = [_node.get_qco(tpc) for _node in next_nodes]
|
120
|
-
next_nodes_supported_input_bitwidth = min([op_cfg
|
121
|
+
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
121
122
|
for qc_opts in next_nodes_qc_options
|
122
123
|
for op_cfg in qc_opts.quantization_config_list])
|
123
124
|
|
@@ -128,7 +129,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
128
129
|
Logger.critical(f"Graph doesn't match TPC bit configurations: {node} -> {next_nodes}.")
|
129
130
|
|
130
131
|
# Verify base config match
|
131
|
-
if any([node_qc_options.base_config.activation_n_bits > qc_opt.base_config
|
132
|
+
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
132
133
|
for qc_opt in next_nodes_qc_options]):
|
133
134
|
# base_config activation bits doesn't match next node supported input bit-width -> replace with
|
134
135
|
# a qco from quantization_config_list with maximum activation bit-width.
|
@@ -12,26 +12,95 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
|
-
import
|
16
|
-
from typing import
|
15
|
+
from logging import Logger
|
16
|
+
from typing import Optional
|
17
17
|
|
18
|
+
from model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema import OpQuantizationConfig, \
|
19
|
+
TargetPlatformModel, QuantizationConfigOptions, OperatorsSetBase
|
18
20
|
|
19
|
-
|
21
|
+
|
22
|
+
def max_input_activation_n_bits(op_quantization_config: OpQuantizationConfig) -> int:
|
23
|
+
"""
|
24
|
+
Get the maximum supported input bit-width.
|
25
|
+
|
26
|
+
Args:
|
27
|
+
op_quantization_config (OpQuantizationConfig): The configuration object from which to retrieve the maximum supported input bit-width.
|
28
|
+
|
29
|
+
Returns:
|
30
|
+
int: Maximum supported input bit-width.
|
31
|
+
"""
|
32
|
+
return max(op_quantization_config.supported_input_activation_n_bits)
|
33
|
+
|
34
|
+
|
35
|
+
def get_config_options_by_operators_set(tp_model: TargetPlatformModel,
|
36
|
+
operators_set_name: str) -> QuantizationConfigOptions:
|
37
|
+
"""
|
38
|
+
Get the QuantizationConfigOptions of an OperatorsSet by its name.
|
39
|
+
|
40
|
+
Args:
|
41
|
+
tp_model (TargetPlatformModel): The target platform model containing the operator sets and their configurations.
|
42
|
+
operators_set_name (str): The name of the OperatorsSet whose quantization configuration options are to be retrieved.
|
43
|
+
|
44
|
+
Returns:
|
45
|
+
QuantizationConfigOptions: The quantization configuration options associated with the specified OperatorsSet,
|
46
|
+
or the default quantization configuration options if the OperatorsSet is not found.
|
47
|
+
"""
|
48
|
+
for op_set in tp_model.operator_set:
|
49
|
+
if operators_set_name == op_set.name:
|
50
|
+
return op_set.qc_options
|
51
|
+
return tp_model.default_qco
|
52
|
+
|
53
|
+
|
54
|
+
def get_default_op_quantization_config(tp_model: TargetPlatformModel) -> OpQuantizationConfig:
|
20
55
|
"""
|
21
|
-
|
56
|
+
Get the default OpQuantizationConfig of the TargetPlatformModel.
|
22
57
|
|
23
58
|
Args:
|
24
|
-
|
25
|
-
**kwargs: Keyword arguments to edit in the cloned object.
|
59
|
+
tp_model (TargetPlatformModel): The target platform model containing the default quantization configuration.
|
26
60
|
|
27
61
|
Returns:
|
28
|
-
|
62
|
+
OpQuantizationConfig: The default quantization configuration.
|
63
|
+
|
64
|
+
Raises:
|
65
|
+
AssertionError: If the default quantization configuration list contains more than one configuration option.
|
66
|
+
"""
|
67
|
+
assert len(tp_model.default_qco.quantization_config_list) == 1, \
|
68
|
+
f"Default quantization configuration options must contain only one option, " \
|
69
|
+
f"but found {len(tp_model.default_qco.quantization_config_list)} configurations." # pragma: no cover
|
70
|
+
return tp_model.default_qco.quantization_config_list[0]
|
71
|
+
|
72
|
+
|
73
|
+
def is_opset_in_model(tp_model: TargetPlatformModel, opset_name: str) -> bool:
|
74
|
+
"""
|
75
|
+
Check whether an OperatorsSet is defined in the model.
|
76
|
+
|
77
|
+
Args:
|
78
|
+
tp_model (TargetPlatformModel): The target platform model containing the list of operator sets.
|
79
|
+
opset_name (str): The name of the OperatorsSet to check for existence.
|
80
|
+
|
81
|
+
Returns:
|
82
|
+
bool: True if an OperatorsSet with the given name exists in the target platform model,
|
83
|
+
otherwise False.
|
29
84
|
"""
|
85
|
+
return opset_name in [x.name for x in tp_model.operator_set]
|
30
86
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
87
|
+
|
88
|
+
def get_opset_by_name(tp_model: TargetPlatformModel, opset_name: str) -> Optional[OperatorsSetBase]:
|
89
|
+
"""
|
90
|
+
Get an OperatorsSet object from the model by its name.
|
91
|
+
|
92
|
+
Args:
|
93
|
+
tp_model (TargetPlatformModel): The target platform model containing the list of operator sets.
|
94
|
+
opset_name (str): The name of the OperatorsSet to be retrieved.
|
95
|
+
|
96
|
+
Returns:
|
97
|
+
Optional[OperatorsSetBase]: The OperatorsSet object with the specified name if found.
|
98
|
+
If no operator set with the specified name is found, None is returned.
|
99
|
+
|
100
|
+
Raises:
|
101
|
+
A critical log message if multiple operator sets with the same name are found.
|
102
|
+
"""
|
103
|
+
opset_list = [x for x in tp_model.operator_set if x.name == opset_name]
|
104
|
+
if len(opset_list) > 1:
|
105
|
+
Logger.critical(f"Found more than one OperatorsSet in TargetPlatformModel with the name {opset_name}.") # pragma: no cover
|
106
|
+
return opset_list[0] if opset_list else None
|