摘要: TVM源码中涉及到表达式遍历的地方,一般是适用VisitExpr接口进行,这个接口设计TVM的visitor模式,具体分析可参考:TVM:visitor设计模式 基类tvm::relay::ExprFunctor 适用visitor遍历的起点是调用VisitExpr接口,看下基类tvm::relay 阅读全文
posted @ 2022-10-04 22:49 牛犁heart 阅读(404) 评论(0) 推荐(1) 编辑
摘要: visitor模式,因为它在编译器的框架中应用的广泛,在TVM中也是无处不在。 visitor模式介绍 Visitor(访问者)模式的定义:将作用于某种数据结构中的各元素的操作分离出来封装成独立的类,使其在不改变数据结构的前提下可以添加作用于这些元素的新的操作,为数据结构中的每个元素提供多种访问方式 阅读全文
posted @ 2022-10-04 22:00 牛犁heart 阅读(419) 评论(0) 推荐(1) 编辑
摘要: 访问者模式诞生的思维过程 访问者模式难理解、难实现,应用它会导致代码的可读性、可维护性变差,所以,访问者模式在实际的软件开发中很少被用到,在没有特别必要的情况下,建议你不要使用访问者模式。 带你"发明"访问者模式 假设我们从网站上爬取了很多资源文件,它们的格式有三种:PDF、PPT、Word。我们现 阅读全文
posted @ 2022-10-04 19:07 牛犁heart 阅读(100) 评论(0) 推荐(0) 编辑
摘要: Object.h概述 命名空间: TVM::runtime 文件中包含的结构: 1.结构体TypeIndex 2.类Object 3.类ObjectPtr 4.类ObjectRef 5.结构体ObjectPtrHash 6.结构体ObjectPtrEqual 7.宏 结构体TypeIndex 该结构 阅读全文
posted @ 2022-10-04 16:33 牛犁heart 阅读(222) 评论(0) 推荐(0) 编辑