1. 12 Apr, 2020 4 commits
  2. 11 Apr, 2020 5 commits
    • [PYTORCH]Abs, Arange, Softplus ops (#5295) · 5b37d4c1
      * [PYTHON]Abs, Arange, Softplus ops
      
      * Review comments updated
      Samuel committed
    • [LLVM] Fix generation of LLVM intrinsics (#5282) · 403929f9
      * [LLVM] Fix generation of LLVM intrinsics
      
      The type list in the call to llvm::Intrinsic::getDeclaration is not
      the intrinsic's signature, it's the list of overloaded types. Without
      this fix, the updated unit test would cause the following error:
      
      TVMError: LLVM module verification failed with the following errors:
      Intrinsic name not mangled correctly for type arguments! Should be:
      llvm.ctlz.i32
      i32 (i32, i1)* @llvm.ctlz.i32.i1
      
      Special handling for llvm.prefetch, sig matching for overloaded ints only
      
      The prefetch intrinsic returns void in LLVM, while it returns i32 in TVM.
      This case needs to be handled specially, because rule-based intrinsic
      translation would cause invalid LLVM type to be created.
      
      Do the signature matching only for overloaded intrinsics. It's not needed
      for non-overloaded ones, so this can save a bit of compile-time.
      
      * Include intrinsic name in the error message
      
      * Fix number of arguments for llvm.fmuladd and llvm.pow
      Krzysztof Parzyszek committed
    • [BYOC] Add example of Composite + Annotate for DNNL fused op (#5272) · 3616ebee
      * merge change from dev branch
      
      * fix string issue
      
      * bring comanic's change back
      masahi committed
    • [Frontend][TensorFlow]Improve TensorFlow Static Shape Tensor Array (#5243) · 4b27cd14
      * Support TF Frontend Static TensorArray
      
      * Fix pylint
      
      * Fix lint
      
      * Move get_tensor_array_shape into prelude
      
      * Fix lint
      
      * Fix common
      Yao Wang committed
    • [RUNTIME] Introduce RValue reference(move) support to TypedPackedFunc (#5271) · b72dd9d9
      * [RUNTIME] Introduce RValue reference(move) support to TypedPackedFunc
      
      This PR introduces RValue reference support the PackedFunc calling convention to address the above issue.
      Specifically, when an argument is a r-value reference, we will use a assign a different type code(`kObjectRValueRefArg`),
      and pass `Object**`  (the address to the Object pointer) instead through the values array.
      The callee can choose to move out this Object pointer and set the original Object pointer from the caller side to be nullptr.
      
      We also add an experimental move support to the python side(marked as _move so to indicate the dev nature).
      This enhancement will enable copy on write optimizations through out the TVM stack.
      
      * Address review comments
      
      * fix compilation
      Tianqi Chen committed
  3. 10 Apr, 2020 18 commits
  4. 09 Apr, 2020 1 commit
  5. 08 Apr, 2020 6 commits
  6. 07 Apr, 2020 6 commits
    • [RUNTIME] Implement TVMDSOOp(TensorFlow custom op) for TVM runtime (#4459) · 53a4ad35
      * Add implementation of TVMDSOOp
      
      * feat: Update cmake script to work with c++11 and in-repo build
      
      * feat: Use libtvm as oplib dependency
      
      * fix: Add missing link dependency to libtvm
      
      * feat: Update tf tvmdso op by review comments
      
      * fix: Update with pr comments
      
      * fix: Fix lint
      
      * feat: Add test script and fix gpu shape
      
      * feat: Add test script and fix gpu shape
      
      * fix: Conditional build tftvm op for gpu
      
      * fix: Conditional build tftvm op for gpu
      
      * fix: Fix pylint of tf_op module.py
      
      * fix: Fix pylint of tf_op module.py
      
      * feat: Conditional enable gpu test for tftvm op
      
      * feat: Conditional enable gpu test for tftvm op
      
      * feat: Add tf_tvmdsoop test script as an app test
      
      * fix: Fix gpu/cpu enabled check on tvm in test script
      
      * fix: Make tf tvmdso op test script runnable with pytest
      
      * remove unused test script test_tfop_module.py
      
      * fix: Remove pushd & popd in tfdsoop test script
      
      * fix: Upgrade tftvmop use python3 to find TensorFlow
      
      * fix: Upgrade tftvmop use python3 to find TensorFlow
      
      * fix: Change target_link_options to target_link_libraries
      
      * fix: Add tftvmop build script's c++ option
      
      * fix: Add tvm library path to tf op test library path
      
      * fix: Debug ci build for tftvm dso op
      
      * fix: Fix cmake error and skip tfop test
      
      * fix: Fix typo and indentation issues
      
      * feat: Use TF list input op def
      
      * fix: Fix style and unexpected changes
      
      Co-authored-by: baoxinqi <baoxinqi@4paradigm.com>
      Co-authored-by: Chen Dihao <chendihao@4paradigm.com>
      Co-authored-by: wrongtest <wrongtest@4paradigm.com>
      tobe committed
    • [LLVM] Do not use x86_vcvtph2ps_256 intrinsic with LLVM 11+ (#5267) · 4e007632
      This intrinsic was removed in LLVM 11.
      Krzysztof Parzyszek committed
    • [LLVM] Use llvm::ElementCount with LLVM 11+ when creating vectors (#5265) · df8a6f3b
      LLVM 11 added support for scalable vectors, and now the number of
      elements in a vector is represented by a llvm::ElementCount class,
      not just a number.
      Krzysztof Parzyszek committed
    • [LLVM] Use llvm::Align with LLVM 11+ to avoid warnings (#5264) · 36ce2e24
      LLVM 11 is introducing a separate class to represent alignment.
      The functions in IRBuilder that create aligned loads and stores,
      and which accept the alignment as an unsigned value have been
      deprecated (and now cause warnings to be emitted).
      Krzysztof Parzyszek committed
    • [uTVM][Runtime] Introduce Virtual Memory Allocator to CRT (#5124) · e11a6092
      * initial crt_memory and memory leak fix in graph_runtime
      
      Change-Id: I0f79f909a04d1c677aabb80f202f0612c5ce7f2a
      
      * fix memory leak
      
      Change-Id: I37104c09e28112b1974fa2b064c809d0a8d686c3
      
      * clean up
      
      Change-Id: I039b12015a1d56c8f4120867cd5a5292da34f3e3
      
      * implement vrealloc
      
      Change-Id: I35800470bcbfcf96652494f359711cb4c2d34398
      
      * allocate from stack memory for most of the variables
      
      Change-Id: I72071289843fff4031c0df8796868a0b9fbc57ee
      
      * allocate from stack memory for all of the variables
      
      Change-Id: I32dba85ac1660c77f51c2d0d8ab6436ed0c01c74
      
      * lint
      
      Change-Id: If12cd240685d7791fc60bc0cfb66389cdc186b73
      
      * lint
      
      Change-Id: I7c9d90c11b60b8edda2427ebd189ebe535af2100
      
      * facilitate the growth of TVM_CRT_MAX_NDIM
      
      Change-Id: I939fa43027a5c7529c5c7c6bd8d6e6beb91b7581
      
      * extend test coverage of vmalloc
      
      Change-Id: Ie4ff6b64fdfe6810836cf8fd44dace82a20c4581
      
      * lint
      
      Change-Id: Ibf3c06619ef296df5c49f3945cb6428777781d69
      
      * move logging.h to src
      
      * fix an error in macOS
      
      * remove logging.h
      
      * use cflags for gcc
      
      * fix compilation error
      Liangfu Chen committed