1. 25 Feb, 2020 1 commit
  2. 19 Jan, 2020 2 commits
    • [REFACTOR][CODEGEN] codegen->target, build_module->driver (#4742) · 33b0831c
      This PR moves the codegen related code into the target folder,
      as they are target specific functionalities.
      
      We also adopt the term "compiler driver" in common compiler infra
      such as rust, GHC and clang.
      As a result, build_module is moved into the driver folder.
      Tianqi Chen committed
    • [REFACTOR] Establish tir (#4740) · cf59b206
      TIR is the new namespace for low-level IR
      for tensor-level optimizations and loop transformations.
      
      This PR establishes the namespace and files.
      
      - lowered_func.h,buffer.h,data_layout.h -> tir/buffer.h,tir/data_layout.h,tir/lowered_func.h
      - ir.h -> tir/expr.h, tir/stmt.h
      - ir_functor_ext.h -> tir/expr_functor.h, tir/stmt_functor.h
      Tianqi Chen committed
  3. 09 Jan, 2020 1 commit
    • [REFACTOR][IR] tvm::Expr -> PrimExpr(Primitive Expr) (#4669) · d6a23cf5
      * [REFACTOR][IR] tvm::Expr -> PrimExpr(Primitive Expr)
      
      As part of unified IR, we will need to unify relay::Expr
      and the current tvm::Expr under the same base type.
      
      From the techinical point of view. tvm::Expr is a "primitive"
      expression that only contains POD types and handles and does
      not do life-cycle management.
      
      This PR renames Expr->PrimExpr to clarify that.
      We will send a subsequent PR to introduce the base expr class.
      
      * Remove legacy VarExpr and ExprHash/Equal
      Tianqi Chen committed
  4. 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
  5. 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
  6. 22 Dec, 2019 1 commit
    • [REFACTOR][DTYPE] Isolate dtype to runtime (#4560) · 7fa8aab5
      dtype.h -> runtime/data_type.h
      
      Changes:
      - Rename all old reference of tvm::Type to DataType
      - ExprNode.type -> ExprNode.dtype
      - Expr.type() -> Expr.dtype()
      - Change Expr related functions to expr_operator.
        - DataType::min() -> min_value(DataType)
        - DataType::max() -> max_value(DataType)
      - Move type constructor Int, UInt, Float, Handle, Bool into DataType.
        - Int(bits) -> DataType::Int(bits)
        - UInt(bits) -> DataType::UInt(bits)
      Tianqi Chen committed
  7. 12 Dec, 2019 1 commit
  8. 08 Dec, 2019 1 commit
  9. 24 Nov, 2019 1 commit
  10. 20 Nov, 2019 1 commit
  11. 15 Nov, 2019 2 commits
  12. 05 Nov, 2019 1 commit
  13. 11 Oct, 2019 1 commit
  14. 04 Oct, 2019 1 commit
  15. 07 Sep, 2019 1 commit
  16. 10 Apr, 2019 1 commit
    • [REFACTOR] Use more TypedPackedFuncs (#2981) · 51785062
      * Add `set_body_simple` to Registry, refactor a lot of code to use it
      
      * Add more types to Relay PackedFuncs
      
      * Add Registry::set_body_method to easily make Node methods into
      PackedFuncs
      
      * Add set_body_method, set_body_node_method; start typing api_lang
      
      * Add some docs, remove unused script
      
      * Fix mysterious linter problem
      
      * Touch up api_ir.cc
      
      * Fix some issues with TOPI argument counts
      
      * Revert changes to topi.cc to avoid problems with optional arguments
      
      * A little more cleanup
      
      * Type more of the api _ functions
      
      * Whitespace
      
      * Finalize names and docs for new registry helpers
      
      * Update docs
      James Gilles committed
  17. 08 Apr, 2019 1 commit
    • [HEADER] Add Header to Comply with ASF Release Policy (#2982) · cffb4fba
      * [HEADER] ASF header dir=include
      
      * [HEADER] ASF Header dir=src
      
      * [HEADER] ASF Header -dir=python
      
      * [HEADER] ASF header dir=topi
      
      * [HEADER] ASF Header dir=nnvm
      
      * [HEADER] ASF Header -dir=tutorials
      
      * [HEADER] ASF Header dir=tests
      
      * [HEADER] ASF Header -dir=docker
      
      * fix whitespace
      
      * [HEADER] ASF Header -dir=jvm
      
      * [HEADER] ASF Header -dir=web
      
      * [HEADER] ASF Header --dir=apps
      
      * [HEADER] ASF Header --dir=vta
      
      * [HEADER] ASF Header -dir=go
      
      * temp
      
      * [HEADER] ASF Header --dir=rust
      
      * [HEADER] Add ASF Header --dir=cmake
      
      * [HEADER] ASF Header --dir=docs
      
      * [HEADER] Header for Jenkinsfile
      
      * [HEADER] ASF Header to toml and md
      
      * [HEADER] ASF Header to gradle
      
      * Finalize rat cleanup
      
      * Fix permission
      
      * Fix java test
      
      * temporary remove nnvm onnx test
      Tianqi Chen committed
  18. 27 Feb, 2019 1 commit
  19. 06 Nov, 2018 1 commit
  20. 01 Nov, 2018 1 commit
  21. 23 Aug, 2018 1 commit
  22. 13 Jun, 2018 1 commit
  23. 11 Jun, 2018 1 commit
  24. 31 May, 2018 1 commit
  25. 18 May, 2018 1 commit
  26. 11 May, 2018 1 commit
  27. 17 Mar, 2018 1 commit
  28. 09 Nov, 2017 1 commit
  29. 03 Nov, 2017 1 commit
  30. 26 Oct, 2017 1 commit
  31. 20 Oct, 2017 1 commit
  32. 15 Oct, 2017 1 commit
  33. 13 Oct, 2017 1 commit
  34. 12 Oct, 2017 1 commit
  35. 13 Sep, 2017 1 commit
    • [BACKEND] initial llvm codegen for amdgpu (#402) · 891e226b
      * added initial llvm codegen for amdgpu
      
      * fixed whitespace
      
      * fixed hsaco gen from ir
      
      * fixed targetmachine for rocm and added GetSource for rocm
      
      * fixed whitespace issues
      
      * changed statement to use less than 100 lines
      
      * added intrinsics for workgroup - rocm
      
      * whitespace - newline error fix
      
      * fixed error msg for workitem-workgroup intrinsics
      
      * added llvm ir dump for rocm codegen
      
      * [ROCM] changed codegen to emit proper amdgpu kernel header
      
      * fixed whitespace error
      
      * fixed whitespace error- 2
      
      * fixed AddFunction to not to use extra arg
      
      1. Changed AddFunctionInternal to not to take extra arg for target type
      2. Use Target from CodeGenLLVM to check for AMDGPU target
      
      * fixed whitespaces
      
      * fixed whitespaces 2
      
      * fixed codegen for AMDGPU - now generating valid IR
      
      * fixed codegen depending on code review
      
      * reviewed alignment for amd devices
      
      * added code to dump code object to file
      
      * fixed cpplint errors
      
      * print out IR after pass manager
      
      * added code to dump asm, obj to file and std string
      
      * fixed whitespaces
      
      * Update codegen_amdgpu.cc
      
      * used registry for amdgpu llvm
      
      * Fixed whitespaces
      
      * added code for calling linker
      
      * fixed formatting errors
      
      * added rocm link python interface
      
      * fixed pylint issues and added more body to the function
      
      * added doc string
      
      * added doc string for module
      
      * fixed python code after review, fixed llvm object codegen
      
      * fixed linker to generate code object
      
      * removed dumping to output file and debugging log out
      
      * fixed lint for python code
      
      * added fault check after running linker
      
      * removed print statement in rocm.py
      
      * changed rocm lld linker to raise runtimeerror than emitting error log to stderr
      
      * changed the way linker command line is pass to subprocess.popen
      
      * removed redundant code and reuse tvm utils
      
      * removed commented out code
      
      * removed cloning of unused modules, and put IR into string
      Aditya Atluri committed
  36. 09 Sep, 2017 1 commit
  37. 31 Aug, 2017 1 commit
  38. 28 Aug, 2017 1 commit