1. 21 May, 2018 1 commit
  2. 21 Apr, 2018 1 commit
  3. 14 Apr, 2018 1 commit
  4. 09 Apr, 2018 1 commit
  5. 06 Apr, 2018 1 commit
  6. 31 Mar, 2018 1 commit
  7. 25 Mar, 2018 1 commit
  8. 10 Mar, 2018 2 commits
  9. 02 Mar, 2018 2 commits
  10. 23 Feb, 2018 3 commits
  11. 21 Feb, 2018 1 commit
  12. 02 Feb, 2018 1 commit
  13. 31 Jan, 2018 2 commits
  14. 28 Jan, 2018 1 commit
    • Porting schedules (except convolutions) to C++ (#763) · f280f23a
      * Ported injective schedules to C++. Added some elementwise ops.
      
      * Fix lint errors
      
      * Added reduction ops and schedules
      
      * Fix lint errors
      
      * Fix lint errors
      
      * Fix lint errors
      
      * Added transform ops
      
      * Fix lint errors
      
      * Fix lint errors
      
      * Added softmax, log_softmax, leaky_relu and flatten ops.
      Fixed issue where TVM_DECLARE_INTRIN_UNARY used the PureExtern flag
      instead of PureIntrinsic.
      Added softmax CUDA schedule.
      
      * Fix lint
      
      * Fix lint
      
      * Added binary_dense, batch_norm_inference, dense, dilate, scale_shift_*,
      global_pool and pool ops.
      Extended pad to allow specifying pad_value.
      Fixed issue where pad would throw if padding was zero in all dimensions.
      
      * Fix lint
      
      * Fix lint
      
      * Added CUDA schedules for dense, pool and global_pool
      
      * Added extern schedules for generic and CUDA
      
      * Fix lint
      
      * Added x86 binary schedules
      
      * Fix lint
      
      * Added rocm dense schedule. Added rocBLAS and cuBLAS support to dense ops
      
      * Added pow ops. Added x86 default and injective schedules
      
      * Fix lint
      
      * Fix lint
      
      * Fix lint
      
      * Fix lint
      
      * Fix lint
      
      * Fix indent
      
      * Removed schedules directory
      
      * Changed left_shift, right_shift to operators. Changed pad_value in pad() to remove pointer usage
      
      * Fixed usage of pad in nn/pooling.h. Fixed declaration of operator>>
      
      * Fixed comments for shift operators
      
      * Added comments to utility functions
      
      * Added TOPI C++ library, exporting broadcast_add op
      
      * Fix lint
      
      * Share libinfo.py with TVM
      
      * Fix lint
      
      * Add other broadcast ops
      
      * Fix lint
      
      * Fix imports in topi
      
      * Fix lib names
      
      * Fixed build issue where windows builds don't apply correct definitions
      
      * Removed TVM_EXPORTS from topi library
      
      * Attempted CI build fix
      
      * Add topi lib to tvm_multilib
      
      * Fix Jenkinsfile
      
      * Added TOPI build target to Makefile
      
      * Fix nn op namespaces.
      
      * Fix lint
      
      * Renamed TOPI lib to libtvm_topi
      
      * Removed _ffi/base.py
      
      * Remove _ffi from topi, now shared with tvm.
      
      * Make libtvm_topi loading optional
      
      * Fix compiler warnings
      
      * Fix lint
      
      * Fix lint
      
      * Fix lint
      
      * Fix build error by making new libs argument to Target optional
      
      * Added C++ Target type interop. Added registration of remaining C++ ops and schedules. Added test of broadcast ops
      
      * Fix lint
      
      * Fix lint
      
      * Fix compile error
      
      * Fix compiler warnings
      
      * Fix compiler warnings
      
      * Fixed int vector interop. Fixed argmin incorrectly invoking argmax. Fixed corner case in default schedules of attempting to fuse 0 length axes. Added tests for reduce ops.
      
      * Refactored reduce builders
      
      * Fixed typos in topi.cc. Added basic test.
      
      * Fixed padding size error. Added dense, dilate, pooling tests
      
      * Fixed issue where clip would output a different dtype to the input. Added split_sections op to cover the other mode of the python split op. Added tests.
      
      * Changed extension type numbers to avoid clash with NNVM
      
      * Fix lint
      
      * Fix compiler warnings
      
      * Removed use of std::vector from the public TOPI API
      
      * Fix lint
      
      * Add TOPI C++ tests to CI
      
      * Fixed detail namespacing. Improved comments.
      alex-weaver committed
  15. 20 Jan, 2018 1 commit
  16. 04 Dec, 2017 1 commit
  17. 21 Nov, 2017 1 commit
  18. 24 Oct, 2017 1 commit
  19. 14 Oct, 2017 1 commit
  20. 13 Oct, 2017 1 commit
    • Add same_as to NodeBase (#550) · fde9b570
      * Add same_as to NodeBase
      
      1. Most class inherited from NodeBase(Schedule, Stage, etc) still have
      the convenience of using '==' for object identity. And this is the right
      behavior for non-Expr classes.
      2. subclasses of ExprOp now create EQ expression when '==' is used.
      
      `__nonzero__` and `__bool__` in EQ and NE is a comprise that in some cases
      object identity semantics is still useful, like in unit test. For instance:
      ````
      assert a == b
      ````
      
      "a == b" will create EQ expression, assert then calls `__nonzero__` of the
      result expression. `Expr.__nonzero__` throws exception since it prohibits
      evaluating IR expression.
      
      More complex case like:
      ````
      assert a in b # b is dict
      ````
      
      it will call `__eq__` on a and all keys of b, then `__bool__` on the result
      expression. This could not easily be done by same_as.
      
      * Retain __hash__ from NodeBase in Python3
      Wei Chen committed
  21. 12 Oct, 2017 1 commit
  22. 26 Sep, 2017 1 commit
  23. 19 Sep, 2017 1 commit
  24. 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
  25. 12 Sep, 2017 1 commit
  26. 05 Sep, 2017 2 commits
  27. 28 Aug, 2017 1 commit
  28. 26 Aug, 2017 1 commit
  29. 20 Aug, 2017 1 commit
  30. 15 Aug, 2017 1 commit
  31. 08 Aug, 2017 1 commit
  32. 31 Jul, 2017 1 commit
    • Build system and dynamic library fixes (#283) · e9744431
      * Install rules and dynamic library loading fixes.
      
      A batch of fixes:
      
      - Added 'install' rule to cmake and make, which installs runtime
        headers and library (libtvm_runtime).
      
      - Added 'installdev' rule to make, which also installs the compiler
        infrastructure headers and library (libtvm)
      
      - Added 'INSTALL_DEV' option to cmake, for toggling installation
        of compiler infrastructure headers and library
      
      - cmake no longer builds into lib/ directory; instead all build
        products go in your build directory
      
      - New algorithm for dynamic library loading, as described in #281.
      
      Signed-off-by: Edward Z. Yang <ezyang@fb.com>
      
      * Emit dylib on OS X
      
      Signed-off-by: Edward Z. Yang <ezyang@fb.com>
      
      * Lint fixes.
      
      Signed-off-by: Edward Z. Yang <ezyang@fb.com>
      Edward Z. Yang committed
  33. 17 Jul, 2017 1 commit
  34. 15 Jul, 2017 1 commit