1. 16 Jan, 2020 1 commit
    • [REFACTOR] top - namespace for Tensor Operation DSL (#4727) · b8261426
      * [REFACTOR] introduce top - Tensor Operation DSL.
      
      Historically we put Tensor, Schedule and compute under the root tvm namespace.
      This is no longer a good idea as the project's scope grows larger
      than the tensor operation DSL.
      
      This PR introduces top -- a namespace for tensor operational
      DSL concepts such as schedule, tensor, compute.
      We moved the related files to the new top subfolder.
      
      * Move relevant files into include/tvm/top and src/top
      Tianqi Chen committed
  2. 14 Jan, 2020 1 commit
    • [REFACTOR][IR] Unified IR IRModule structure. (#4699) · c69092ae
      This PR brings relay::Module as the unified IRModule structure.
      IRModule will be used as the basic unit for transformations
      through out the stack.
      
      - Rename relay::Module -> IRModule
      - Move relay/module.h -> ir/module.h
      - ModuleNode::FromExpr -> IRModule::FromExpr
      - FromText -> IRModule::FromText
      Tianqi Chen committed
  3. 08 Jan, 2020 1 commit
    • [REFACTOR][IR] Add Node suffix to low-level IR nodes (#4649) · f4c5f93b
      * [REFACTOR][IR] Variable -> VarNode
      
      * [REFACTOR][IR] Add/Sub/Mul/Div -> AddNode/SubNode etc.
      
      * [REFACTOR][IR] Min/Max/FloorDiv/FloorMod -> MinNode/MaxNode etc.
      
      * [REFACTOR][IR] EQ/NE/LT/LE/GT/GE/Select -> EQNode/NENode etc.
      
      * [REFACTOR][IR] Add Node suffix to Select/Call/Load/Ramp/Shuffle/Let
      
      * [REFACTOR][IR] Add node suffix to IntImm/UIntImm/FloatImm/StringImm
      
      * [REFACTOR][IR] Add Node suffix to Any, AttrStmt, AssertStmt
      
      * [REFACTOR][IR] Add Node suffix to Store/Provide/Allocate/Free
      
      * [REFACTOR][IR] Add Node suffix to ProducerConsumer
      
      * Fix lint
      
      * style updates, test fixes
      Tianqi Chen committed
  4. 04 Jan, 2020 1 commit
    • [REFACTOR] TVM_REGISTER_API -> TVM_REGISTER_GLOBAL (#4621) · 81523604
      TVM_REGSISTER_API is an alias of TVM_REGISTER_GLOBAL.
      In the spirit of simplify redirections, this PR removes
      the original TVM_REGISTER_API macro and directly use TVM_REGISTER_GLOBAL.
      
      This type of refactor will also simplify the IDE navigation tools
      such as FFI navigator to provide better code reading experiences.
      
      Move EnvFunc's definition to node.
      Tianqi Chen committed
  5. 24 Nov, 2019 1 commit
  6. 28 Oct, 2019 1 commit
  7. 02 Oct, 2019 1 commit
  8. 30 Aug, 2019 1 commit
  9. 23 Aug, 2019 1 commit
  10. 06 Aug, 2019 1 commit
    • [Relay] Legalize pass (#3672) · 79922bd3
      * [Relay] Rewrite pass.
      
      This pass transforms an expression to other expression.
      
      This pass has many usecases
       * Replace a expr to another expr, if the other expr has faster performance.
       * For ASICs, we might want to modify the inputs to adapt to the HW support.
       * Alter op layout can work in conjunction with this pass.
      
      The supporting usecase is the Intel i8 x i8 conv. Intel HW supports u8 x i8 conv
      in HW. Using this pass, we can replace an i8 x i8 conv to a sequence of
      operators where one of the operators is now u8 x i8 conv. This will also help
      automatic quantizaion performance.
      
      * Better API name.
      
      * Removing the conv2d legalization for x86. Will send a separate PR.
      
      * Test name changes.
      
      * Registering one funtion to register FTVMLegalize.
      
      * Better comments.
      Animesh Jain committed