def test_debug_str(self): p = Program() b = p.current_block() #selected_rows b.create_var( name='selected_rows', dtype="float32", shape=[5, 10], type=core.VarDesc.VarType.SELECTED_ROWS) #tensor array b.create_var( name='tensor_array', shape=[5, 10], type=core.VarDesc.VarType.LOD_TENSOR_ARRAY) #operator mul_x = b.create_parameter( dtype="float32", shape=[5, 10], lod_level=0, name="mul.x") mul_y = b.create_var( dtype="float32", shape=[10, 8], lod_level=0, name="mul.y") mul_out = b.create_var( dtype="float32", shape=[5, 8], lod_level=0, name="mul.out") b.append_op( type="mul", inputs={"X": mul_x, "Y": mul_y}, outputs={"Out": mul_out}, attrs={"x_num_col_dims": 1}) print(debugger.pprint_program_codes(p)) debugger.draw_block_graphviz(p.block(0), path="./test.dot")
def draw(block, filename='debug'): """ """ dot_path = './' + filename + '.dot' pdf_path = './' + filename + '.pdf' debugger.draw_block_graphviz(block, path=dot_path) cmd = ["dot", "-Tpdf", dot_path, "-o", pdf_path] subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
def graphviz(block, output_dir="", filename='debug'): dot_path = os.path.join(output_dir, filename + '.dot') pdf_path = os.path.join(output_dir, filename + '.pdf') debugger.draw_block_graphviz(block, path=dot_path) cmd = ["dot", "-Tpdf", dot_path, "-o", pdf_path] p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) p.wait()
def _visualize_graphviz(self, program, output_dir, output_filename): block = program.global_block() dot_path = os.path.join(output_dir, output_filename + '.dot') pdf_path = os.path.join(output_dir, output_filename + '.pdf') debugger.draw_block_graphviz(block, path=dot_path) cmd = ["dot", "-Tpdf", dot_path, "-o", pdf_path] p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) p.wait()
def draw(block, filename='debug'): ''' ''' dot_path = './' + filename + '.dot' pad_path = './' + filename + '.pdf' debugger.draw_block_graphviz(block, path=dot_path) cmd = ['dot', '-Tsvg', dot_path, '-o', pdf_path] subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
def draw_graph(self, output_path='./', filename='debug'): """ Draw graph with graphviz """ dot_path = os.path.join([output_path, filename + '.dot']) pdf_path = os.path.join([output_path, filename + '.pdf']) debugger.draw_block_graphviz(self.program.global_block(), path=dot_path) cmd = ["dot", "-Tpdf", dot_path, "-o", pdf_path] subprocess.Popen( cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
def test_debug_str(self): p = Program() b = p.current_block() #selected_rows b.create_var(name='selected_rows', dtype="float32", shape=[5, 10], type=core.VarDesc.VarType.SELECTED_ROWS) #tensor array b.create_var(name='tensor_array', shape=[5, 10], type=core.VarDesc.VarType.LOD_TENSOR_ARRAY) #operator mul_x = b.create_parameter(dtype="float32", shape=[5, 10], lod_level=0, name="mul.x") mul_y = b.create_var(dtype="float32", shape=[10, 8], lod_level=0, name="mul.y") mul_out = b.create_var(dtype="float32", shape=[5, 8], lod_level=0, name="mul.out") b.append_op(type="mul", inputs={ "X": mul_x, "Y": mul_y }, outputs={"Out": mul_out}, attrs={"x_num_col_dims": 1}) print(debugger.pprint_program_codes(p)) debugger.draw_block_graphviz(p.block(0), path="./test.dot")
def save_diagram(self, localtion='./model_diagram.dot'): debugger.draw_block_graphviz(self.global_block, path=localtion)