parameters: (blocks, op_sizes, exclude_gid)
return_statement: return fusion_type, type_info
docstring: get a recommendation for parallel fusion
docstring_summary: get a recommendation for parallel fusion
docstring_tokens: get a recommendation for parallel fusion
function: def fusion_consult(blocks, op_sizes, exclude_gid):
          """get a recommendation for parallel fusion"""
          # Default is block fusion
          fusion_type = "block_fusion"
          type_info = None
  
          activate_pipeline_optimization = False  # Disable pipeline optimization for now.
          if activate_pipeline_optimization:
              pipeline_info = ScheduleAnalyzer.pipeline_fusion_analyze(
                  blocks, op_sizes, exclude_gid)
              if pipeline_info:
                  fusion_type = "block_pipeline_fusion"
                  type_info = pipeline_info
  
          return fusion_type, type_info
function_tokens: def fusion_consult ( blocks , op_sizes , exclude_gid ) : # Default is block fusion fusion_type = "block_fusion" type_info = None activate_pipeline_optimization = False # Disable pipeline optimization for now. if activate_pipeline_optimization : pipeline_info = ScheduleAnalyzer . pipeline_fusion_analyze ( blocks , op_sizes , exclude_gid ) if pipeline_info : fusion_type = "block_pipeline_fusion" type_info = pipeline_info return fusion_type , type_info