def xgraph_dpu_optimizer(xgraph, target=None, **kwargs): layout_transform_pass = XGraphLayoutTransformationPass('NHWC', target=target) dpu_xgraph = layout_transform_pass.execute(xgraph, subgraphs_only=False) optimizer = XGraphTfGeneratorOptimizer(dpu_xgraph) optimizer.optimize() return dpu_xgraph
def xgraph_dpu_optimizer(xgraph, target=None, **kwargs): # Annoate and merge patterns (e.g. mul + max = leaky relu) XGraphPatternAnnotator()(xgraph) xgraph = XGraphPatternMutator()(xgraph) layout_transform_pass = \ XGraphLayoutTransformationPass('NHWC', target=target) dpu_xgraph = layout_transform_pass.execute(xgraph, subgraphs_only=False) # optimizer = QOptimizer(dpu_xgraph) # optimizer.optimize() optimizer = XGraphTfGeneratorOptimizer(dpu_xgraph) optimizer.optimize() return dpu_xgraph