The current documetnation of MASE is somehow a bit dated, so I am thinking of having a collective effort to bring it to a more usable state, this is related to the fix/tests branch.
What we need to do for passes.rst
On a high-level, we want to achieve:
Each pass has its associated test, this is for both testing and also for users to have an example to play around. This is reflected in passes.rst as a table. In the usage example column, we put in the test code that has exercised this implemented pass.
Each pass should have its documentation on how to set up the pass_args, an example is prune, we should include a python code block to clarify things like
.. code-block:: python
pass_config = {
"weight" : {
"scope": "local", # ["local, "global"] are available
"granularity": "element", # ["element"] are available
"method": "l1", # ["l1", "random"] are available
"sparsity": 0.5, # a float between 0.0 and 1.0
}
"activation" : {
"scope": "local", # ["local, "global"] are available
"granularity": "element", # ["element"] are available
"method": "l1", # ["l1", "random"] are available
"sparsity": 0.5, # a float between 0.0 and 1.0
}
The current documetnation of MASE is somehow a bit dated, so I am thinking of having a collective effort to bring it to a more usable state, this is related to the fix/tests branch.
What we need to do for
passes.rst
On a high-level, we want to achieve:
Each pass should have its documentation on how to set up the
pass_args
, an example is prune, we should include apython
code block to clarify things likeModule analysis passes
calculate_avg_bitwidth
@Aaron-Zhao123Module transform passes
quantize
@Aaron-Zhao123Graph analysis passes
init_metadata_analysis
@Aaron-Zhao123add_common_metadata
@Aaron-Zhao123add_software_metadata
@Aaron-Zhao123add_hardware_metadata
@jianyicheng @pgimenesreport_graph_analysis_pass
@Aaron-Zhao123report_node_hardware_type_analysis_pass
@Aaron-Zhao123report_node_meta_param_analysis_pass
@Aaron-Zhao123report_node_shape_analysis_pass
@Aaron-Zhao123report_node_type_analysis_pass
@Aaron-Zhao123profile_statistics_analysis_pass
@ChengZhang-98calculate_avg_bits_mg_analysis_pass
@ChengZhang-98add_natural_sparsity_metadata_analysis_pass
@Aaron-Zhao123add_pruning_metadata_analysis_pass
@Aaron-Zhao123hook_inspection_analysis_pass
@Aaron-Zhao123runtime_analysis_pass
@firemountain154Bverify_metadata
@jianyichengverify_common_metadata
@jianyichengverify_software_metadata
@jianyichengverify_hardware_metadata
@jianyichengGraph transform passes
prune_transform_pass
@Aaron-Zhao123prune_detach_hook_transform_pass
@Aaron-Zhao123quantize_transform_pass
@Aaron-Zhao123summarize_quantization_analysis_pass
@Aaron-Zhao123conv_bn_fusion_transform_pass
@Aaron-Zhao123logicnets_fusion_transform_pass
@Aaron-Zhao123onnx_annotate_transform_pass
@Aaron-Zhao123emit_verilog_top_transform_pass
@jianyicheng @pgimenesemit_verilog_tb_transform_pass
@jianyicheng @pgimenesemit_bram_transform_pass
@jianyichengemit_mlir_hls_transform_pass
@jianyichengemit_internal_rtl_transform_pass
@jianyichengtensorrt_fake_quantize_transform_pass
@firemountain154Btensorrt_calibrate_transform_pass
@firemountain154Btensorrt_fine_tune_transform_pass
@firemountain154B Maybe consider drop this passGraph interface passes
load_mase_graph_interface_pass
@ChengZhang-98save_mase_graph_interface_pass
@ChengZhang-98save_node_meta_param_interface_pass
@Aaron-Zhao123 @ChengZhang-98load_node_meta_param_interface_pass
@Aaron-Zhao123 @ChengZhang-98tensorrt_engine_interface_pass
@firemountain154Bonnx_runtime_interface_pass
@firemountain154BWhat we need to do for
tutorials.rst