测试 Tedd

测试 Tedd#

import set_env
# import numpy as np
from IPython.display import display_svg
from tvm import te, build, lower
# from tvm_book.testing.relay.viz import graphviz_relay
from tvm.contrib import tedd
A = te.placeholder((1,), name="A")
B = te.placeholder((1,), name="B")
C = te.compute(A.shape, lambda i: A[i] + B[i], name="C")
sch = te.create_schedule(C.op)
ir_mod = lower(sch, [A, B, C], name="test_add")
rt_mod = build(ir_mod, target="llvm")
func = te.create_prim_func([A, B, C])
func.show()
# from tvm.script import tir as T

@T.prim_func
def main(A: T.Buffer((1,), "float32"), B: T.Buffer((1,), "float32"), C: T.Buffer((1,), "float32")):
    T.func_attr({"tir.noalias": T.bool(True)})
    # with T.block("root"):
    for i in range(1):
        with T.block("C"):
            v_i = T.axis.spatial(1, i)
            T.reads(A[v_i], B[v_i])
            T.writes(C[v_i])
            C[v_i] = A[v_i] + B[v_i]
graph = tedd.viz_dataflow_graph(sch, show_svg=True)
display_svg(graph)
../../_images/41180b72fe244555a8eb476d0cfe6d50508ebb54778f96bd1522be78cc7e3da2.svg
sch = sch.normalize()
tree = tedd.viz_schedule_tree(sch, show_svg=True)

# tedd.viz_schedule_tree(s, dot_file_path="/tmp/scheduletree.dot")
display_svg(tree)
../../_images/59197491388704b10e782e3eac3422741f708a26ae8ce6384195a2d9bf6195e2.svg
from graphviz import Source
# tedd.viz_itervar_relationship_graph(s, dot_file_path="/tmp/itervar.dot")
dot_string = tedd.viz_itervar_relationship_graph(sch, output_dot_string=True)
src = Source(dot_string)
display_svg(src)
../../_images/7c8057679acec0b525e589f327aff7fbca741dc1a6d096bbf41be460fa40e88d.svg
m = te.var("m")
n = te.var("n")
X = te.placeholder((m, n), name="X")
s_state = te.placeholder((m, n))
s_init = te.compute((1, n), lambda _, i: X[0, i])
s_update = te.compute((m, n), lambda t, i: s_state[t-1, i] + X[t, i])
res = te.scan(s_init, s_update, s_state, X)
sch = te.create_schedule(res.op)
sch = sch.normalize() # 类型和 shape 推断
from graphviz import Source
# tedd.viz_itervar_relationship_graph(s, dot_file_path="/tmp/itervar.dot")
dot_string = tedd.viz_itervar_relationship_graph(sch, output_dot_string=True)
src = Source(dot_string)
display_svg(src)
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: n
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: n
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  11: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  12: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  13: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  14: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  15: _ZN3tvm7runtime13PackedFuncObj


[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: scan.idx
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: scan.idx
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  11: _ZN3tvm7runtime13PackedFuncObj
  12: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  13: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  14: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  15: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  16: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  17: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  18: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  19: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  20: _ZN3tvm7runtime13PackedFuncObj


[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: n
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: n
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  11: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  12: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  13: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  14: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  15: _ZN3tvm7runtime13PackedFuncObj


[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: m
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: m
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::tir::Sub, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier18::{lambda(tvm::tir::Sub, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier18::{lambda(tvm::tir::Sub, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  11: _ZN3tvm7runtime13PackedFuncObj
  12: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  13: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  14: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  15: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  16: _ZN3tvm7runtime13PackedFuncObj
  17: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  18: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  19: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  20: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  21: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  22: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  23: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  24: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  25: _ZN3tvm7runtime13PackedFuncObj


[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: n
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: n
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  11: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  12: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  13: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  14: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  15: _ZN3tvm7runtime13PackedFuncObj
../../_images/e01d8d70cd66b167a34f09dd44758abefa9ae93f692da38f70586fe35a6e9910.svg
tree = tedd.viz_schedule_tree(sch, show_svg=True)

# tedd.viz_schedule_tree(s, dot_file_path="/tmp/scheduletree.dot")
display_svg(tree)
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: n
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:34] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: n
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  11: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  12: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  13: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  14: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  15: _ZN3tvm7runtime13PackedFuncObj


[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: scan.idx
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: scan.idx
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  11: _ZN3tvm7runtime13PackedFuncObj
  12: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  13: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  14: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  15: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  16: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  17: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  18: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  19: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  20: _ZN3tvm7runtime13PackedFuncObj


[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: n
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: n
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  11: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  12: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  13: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  14: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  15: _ZN3tvm7runtime13PackedFuncObj


[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: m
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: m
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::tir::Sub, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier18::{lambda(tvm::tir::Sub, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier18::{lambda(tvm::tir::Sub, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier17::{lambda(tvm::tir::Add, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  11: _ZN3tvm7runtime13PackedFuncObj
  12: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  13: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  14: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  15: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  16: _ZN3tvm7runtime13PackedFuncObj
  17: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  18: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  19: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  20: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  21: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  22: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  23: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  24: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  25: _ZN3tvm7runtime13PackedFuncObj


[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:70: Warning: Didn't find variable definition for: n
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/ir/./../utils.h:46: Warning: TVMScript printer falls back to the legacy ReprPrinter with the error:
[10:36:35] /media/pc/data/lxw/ai/tvm/src/script/printer/tir/expr.cc:76: IndexError: Variable is not defined in the environment: n
Stack trace:
  0: tvm::script::printer::PrintVar(tvm::tir::Var const&, tvm::ObjectPath const&, tvm::script::printer::IRDocsifier const&)
  1: _ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIZNS0_15TypedPackedFuncIFNS_6script7printer3DocENS_3tir3VarENS_10ObjectPathENS6_11IRDocsifierEEE17AssignTypedLambdaINS6_L27__make_functor_IRDocsifier0MUlS9_SA_SB_E_EEEvT_EUlRKNS0_7TVMArgsEPNS0_11TVMRetValueEE_EEE4CallEPKS1_SH_SL_
  2: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  3: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  4: tvm::script::printer::ExprDoc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::ExprDoc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  5: tvm::runtime::TypedPackedFunc<tvm::script::printer::Doc (tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)>::AssignTypedLambda<tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1}>(tvm::script::printer::__make_functor_IRDocsifier14::{lambda(tvm::Range, tvm::ObjectPath, tvm::script::printer::IRDocsifier)#1})::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  6: _ZN3tvm7runtime13PackedFuncObj
  7: tvm::runtime::TVMRetValue tvm::runtime::PackedFunc::operator()<tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&>(tvm::runtime::ObjectRef&, tvm::ObjectPath&, tvm::script::printer::IRDocsifier&) const
  8: tvm::script::printer::Doc tvm::script::printer::IRDocsifierFunctor<tvm::script::printer::Doc, tvm::ObjectPath, tvm::script::printer::IRDocsifier>::operator()<tvm::runtime::ObjectRef>(tvm::runtime::String const&, tvm::runtime::ObjectRef, tvm::ObjectPath, tvm::script::printer::IRDocsifier) const
  9: tvm::script::printer::Doc tvm::script::printer::IRDocsifierNode::AsDoc<tvm::script::printer::Doc>(tvm::runtime::ObjectRef const&, tvm::ObjectPath const&) const
  10: tvm::script::printer::Docsify[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::script::printer::IRDocsifier const&, tvm::script::printer::Frame const&, tvm::PrinterConfig const&)
  11: tvm::script::printer::ReprPrintIR[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::PrinterConfig const&)
  12: tvm::TVMScriptPrinter::Script[abi:cxx11](tvm::runtime::ObjectRef const&, tvm::runtime::Optional<tvm::PrinterConfig> const&)
  13: tvm::script::printer::RedirectedReprPrinterMethod(tvm::runtime::ObjectRef const&, tvm::ReprPrinter*)
  14: tvm::runtime::TypedPackedFunc<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > (tvm::runtime::ObjectRef)>::AssignTypedLambda<tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}>(tvm::__mk_TVM0::{lambda(tvm::runtime::ObjectRef)#1}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const, tvm::runtime::TVMRetValue) const
  15: _ZN3tvm7runtime13PackedFuncObj
../../_images/2a31bf19862597cce940a2cb8285c47fa60068dee416907301b4e2322c1c7e1a.svg
graph = tedd.viz_dataflow_graph(sch, show_svg=True)
display_svg(graph)
../../_images/d8d33b42d197478d12a3a3d42b045b99590ffee0f6612f3ead1f36995ccb3a2b.svg