lixiaoquan [Fri, 17 May 2019 17:13:17 +0000 (01:13 +0800)]
[CODEGEN][CUDA][OPENCL] Handle INF and NAN (#3194)
Josh Fromm [Fri, 17 May 2019 10:41:50 +0000 (03:41 -0700)]
[Relay] Better shape inference in TensorFlow Frontend. (#3176)
* Some bug fixes in tensorflow graph converter and added DepthToSpace operator.
* Made DepthToSpace better comply with other function syntax.
* Added better shape inference for unusual situations.
* Lint fixes.
* Added depthtospace test.
* Added test cases for value inference and depthtospace.
* Added fill testing.
* Made comment changes and added BroadcastTo op and tests.
* Fixed underlining and unneeded opt_level forcing.
* Added _infer_value assertion that all values to infer are available in passed parameters.
Tianqi Chen [Thu, 16 May 2019 20:22:31 +0000 (13:22 -0700)]
[RELAY] Hotfix build_module creation (#3198)
雾雨魔理沙 [Thu, 16 May 2019 18:54:43 +0000 (11:54 -0700)]
Update .gitignore (#3199)
Philipp Krones [Thu, 16 May 2019 18:00:38 +0000 (20:00 +0200)]
Quick fix of VTA FPGA Toolchain Installation documentation (#3196)
Wuwei Lin [Thu, 16 May 2019 15:39:13 +0000 (23:39 +0800)]
[TOPI] Raise exception group_conv2d_nchw not supported (#3195)
Siva [Thu, 16 May 2019 03:55:38 +0000 (09:25 +0530)]
[TENSORLFOW] PlaceholderWithDefault (limited) implementation. (#3184)
Mark Rogers [Thu, 16 May 2019 03:26:24 +0000 (20:26 -0700)]
Get list of unsupported ONNX operators (#2995)
llyfacebook [Thu, 16 May 2019 03:21:35 +0000 (20:21 -0700)]
Add the acc16 intrinsic support (#3081)
Josh Fromm [Thu, 16 May 2019 02:03:40 +0000 (19:03 -0700)]
[Relay] Option to select which convolution layers are quantized. (#3173)
* Stashing for later maybe.
* Added new option to leave specific layers unquantized.
* Better error checking.
* remove unneeded import
* tab to spaces
* pylint fixes
* more pylint fixes
Zhi [Thu, 16 May 2019 00:28:18 +0000 (17:28 -0700)]
[Relay][Compilation] replace relay.build_module with C++ BuildModule (#3174)
Gus Smith [Wed, 15 May 2019 20:34:30 +0000 (13:34 -0700)]
[Datatypes] Custom datatypes (#2900)
* Register and use custom datatypes in TVM
This patch adds the ability to register and use a custom datatype from Python,
using the `register_datatype` call. The datatype can then be passed as the
`dtype` parameter using the syntax `dtype="custom[<type_name>]bitsxlanes"`.
* Removes extra file
* Register custom datatypes with TVM; specify Cast and Add lowering
This commit adds functionality for registering custom datatypes with TVM, and
furthermore adding custom lowering functions to lower those custom datatypes.
This commit only adds lowering for the Cast and Add ops; more ops will be added
soon.
Check out some custom datatype samples in my repository of samples:
https://github.com/gussmith23/tvm-custom-datatype-samples
* Register and lower casts from Python
* Formatting
* Fix include; was including too much
* Add comment
* Add DatatypeRegistered
* Add storage size field to custom datatypes
This field indicates the bitwidth of the opaque block of data into which
instances of the datatype will be stored, when TVM compiles. For example, if I
create a datatype with a storage size of 16, then
- Constants of that datatype will be created as unsigned 16-bit ints
- Calls to external functions taking that datatype will pass the data as
unsigned 16-bit ints
- External functions returning that datatype will be assumed to return unsigned
16-bit ints.
* Change how lowering funcs (Cast and other ops) are named in registry
tvm.datatypes.lower.<target>.cast.<dst-type>.<src-type>
becomes
tvm.datatypes.lower.<target>.Cast.<dst-type>.<src-type>
And fixes some sloppy code around how the other ops were being formatted.
* Update Python register_datatype to accept storage size
* Oops, left out one cast->Cast change
* Look up storage size when parsing `custom[typename]`
When we encounter this type string in Python, it will be parsed into a Halide
type object in C++. Some of my original code supported this parsing, but we now
have to attach the storage type to the type (by setting the bits field).
* Change how external calls for casting/other ops are done
Firstly, we now use the storage size of the custom type when determining
input/output types; e.g. a cast to a custom type with storage size 16 is seen as
a call to an external function returning an opaque uint of size 16.
Secondly, write a macro to handle the other ops. Originally I thought I could
handle these at runtime, with a single `_register_op` global. I transitioned
instead to using individual `_register_Add` etc. calls generated with a macro,
but I don't remember why.
* When encountering a custom type immediate, generate UIntImm
* Translate custom types to LLVM type
* Generate correct return type in Casts
Originally I was assuming that the result type from casts was always a custom
datatype, and so I was making the Call return a UInt type.
* Use TVM-idiomatic recursion style in DatatypesLowerer
This was actually a bug, I'm pretty sure; we wouldn't have recursed deep on any
complex programs. As a result of making this change, I also uncovered another
potential bug, where the datatypes lowering pass would attempt to lower a Load
of a custom type. By commenting out the `Mutate_` for Load, I was able to stop
the error from cropping up, but frankly, I'm not satisfied with the solution;
how is it that we are able to run codegen when Loads of custom datatypes are
present in the IR? I have not written any code, to my knowledge, that will
support this. Perhaps Load does not care about the underlying datatype?
* Use CHECK
* Add comment about which Mutate_s are needed
* Add comments
* Add GetCustomDatatypeRegistered as an extern C function
* Formatting, comments, casting
* Change how datatype string is formatted
* Use bits() instead of GetStorageSize
Use bits() instead of GetStorageSize
* Change comment
* Add datatype.py
* Change registered function name (datatypes->datatype)
* Remove GetStorageSize
* Format custom datatypes like any other datatype
Specifically, we now print the bits and lanes after the `custom[...]` string.
* Correctly implement datatype lowering in Python
* Remove unneeded include
* Make function naming consistent
* Use CHECK instead of internal_assert
* Rename macro
* Formatting
* Rename functions
* Implement Cast lowering
`_datatype_register_op` is now able to lower both binary ops and Casts.
* Formatting
* Formatting
* Clang format, google style
* Fix std::string/extern "C" warnings
* Formatting
* Formatting
* Lower Allocates and Loads during datatype lowering
This should ensure that there are no custom datatypes remaining once datatype
lowering is done. This will allow us to remove the code in the LLVM codegen
which deals with custom datatypes.
* Revert additions to codegen_llvm.cc which are now unneeded
* Pass cpplint on lower_datatypes.cc
* Add clarifying comment
* Remove datatype lowering registration funcs from C++
* Add CHECKs
* Remove TODO
* Remove all references to storage size
* Move and rename function
* Rename function
* Remove done TODOs and other handled comments
* Remove irrelevant Load code and comments
* Comment out the IR node types I'm not sure about yet
* Add bfloat16 datatype unittest
* Fix MakeConstScalar
MakeConstScalar for a custom datatype will now call out to a function which can
be registered on a per-datatype basis. The function will take a double and
return the equivalent value in the custom datatype format.
Note that these code paths are not actually used or tested at the moment. I have
not yet written an example which uses const scalars of a custom datatype.
* Formatting
* Change pass name
* Allow users to register whatever lowering function they want
Tianqi pointed out that users should be able to register whatever lowering
function they want, and should not be constrained to registering lowering
functions which just call out to external libraries.
I still provide a function for making lowering functions which call out to
external libraries, for convenience.
* Add clarifying comment
* Remove unneeded comment
* Remove unneeded function
* Rename file
* Undo unnecessary change
* Undo unnecessary change
* Make naming consistent
Rename "datatypes" to "custom datatypes" in most contexts.
* Revert an artifact of old code
* Fix build warnings, add TODO
* Lint
* Remove unnecessary use of extern C by separating decl and impl
* Error checking
* Remove TODO
* Missed a name change
* Lint
* Python lint
* Correctly format datatype
* Move bfloat16 to 3rdparty
* "custom_datatypes" --> "datatype" in most places
I left the pass as "LowerCustomDatatypes" to indicate that we're not lowering
anything other than custom datatypes. Otherwise, everything else has been
changed.
* Upgrade datatype unittest
I used a float calculator to generate some real testcases for the unittest.
* Separate public includes and private implementation
Specifically, create cleaner decoupling between datatypes stuff in packed_func
and the datatype registry implementation.
* Formatting
* Limit custom datatype codes to >128
* Add TODOs
* Fix comment
* Formatting
* Clean up datatype unittest
* Remove un-exported functions in public headers; UIntImm->FloatImm
More places where I accidentally was using implementation-only functions in
public headers.
Additionally, store custom datatype immediates as FloatImms. A later change will
add new lowering logic to lower these FloatImms to UIntImms.
Plus formatting change.
* Lint
* Use FloatImm (not UIntImm) to hold immediates of custom datatypes
This change switches from using UIntImm to FloatImm for storing immediates of
custom datatypes. The value of the number is stored in a double, which should be
enough precision for now, for most custom types we will explore in the immediate
future.
In line with this change, we change the datatype lowering so that FloatImms are
lowered to UInts of the appropriate size. Originally, this was going to be done
by allowing the user to register a double->uint_<storage size>_t conversion
which would be called at compile time to convert the value from the FloatImm to
a UInt and store it in a UIntImm. After discussions with Tianqi, we decided to
take the simpler route, and lower FloatImms just as we lower all other ops: by
replacing them with Call nodes. In this case, presumably the user will Call out
to a conversion function in their datatype library.
The justification for this decision is due to the functionality added in #1486.
This pull request adds the ability to load LLVM bytecode in at compile time.
This applies in our case as follows:
1. The user writes their custom datatype programs and registers their lowering
functions in the same way we've been doing it so far. All operations over
custom datatypes are lowered to Calls to the datatype library.
2. The user compiles their datatype library to LLVM bytecode.
3. At TVM compile time, the user loads the LLVM bytecode. Depending on how the
datatype library is written, Clang should be able to perform constant
folding over the custom datatype immediates, even if their conversions are
done with calls to the library.
Additionally adds test to test the FloatImm codepath.
* Re-add a change I removed accidentally during rebase
* Cleanup
* Remove unnecessary TVM_DLLs
* Add custom datatype utilities source file to Go runtime pack
* Revert "Remove unnecessary TVM_DLLs"
This reverts commit
4b742b99557fd3bf0ce6617f033c8b444b74eda4.
* Mark bfloat code as TVM_DLL
* Moves custom datatype runtime utilities to c_runtime_api.cc
* Revert "Add custom datatype utilities source file to Go runtime pack"
This reverts commit
aecbcde0b2cc09a2693955b77037fe20f93b5bfd.
* Move datatype parsing to its own function
* Change comments
* Remove unneeded function
* Formatting
* Formatting
* Documentation
* Add kCustomBegin, use it for checking for custom types
* Documentation
* Formatting
* Move static definition to implementation
* Remove comment
* Decide toBeLowered before lowering arguments of Expr
In the past, e.g. when lowering custom datatypes for an Add, we would lower a
and b first, and then decide whether the resulting new Add needed to be lowered
based on the (new) types of a and b. Now, instead, we need to check the types of
a and b first (to see if they're custom types), and then lower them (so they'll
become non-custom types), and then lower the new Add.
* Revert "Move datatype parsing to its own function"
This reverts commit
d554a5881afcf69af1c070d882a7651022703a09.
This broke parsing. Will figure this out later. There isn't a really clean way
to separate this out given how the rest of the function is written.
* Replace comment
* Documentation
* Remove comment and TVM_DLL
* Better error messages
* Remove artifact of rebase
* Separate datatypes parsing to its own function
* Add \returns
* Comment changes; add TODO
* Refactor tests
Yong Wu [Wed, 15 May 2019 05:42:34 +0000 (22:42 -0700)]
[Relay][TensorFlow Frontend] SoftPlus Sqrt (#3187)
ghostplant [Tue, 14 May 2019 17:22:33 +0000 (01:22 +0800)]
Avoid using heavy API to query single attribution (#3179)
eqy [Tue, 14 May 2019 12:34:16 +0000 (05:34 -0700)]
[RELAY][PASS] detect depthwise conv2d in mac_count pass (#3083)
* check in
* use groups
* CHECK_EQ
* trigger CI
* Update mac_count.cc
* trigger CI
* trigger CI
Joshua Z. Zhang [Mon, 13 May 2019 21:17:11 +0000 (14:17 -0700)]
add onnx elemwise greater/less (#3186)
Salem Derisavi [Mon, 13 May 2019 19:48:00 +0000 (15:48 -0400)]
cleanup: removed a piece of code that is redundant now given updates to HalideIR submodule (#3169)
Oldpan [Mon, 13 May 2019 18:03:41 +0000 (02:03 +0800)]
Fix a bug of flatten in ONNX to Relay converter (#3180)
* fix onnx frontend flatten bug
* Update onnx.py
* Update onnx.py
* Update onnx.py
Siva [Mon, 13 May 2019 17:03:32 +0000 (22:33 +0530)]
[GOLANG] Some fixes for golang latest version compiler. #3119 (#3182)
Jared Roesch [Sat, 11 May 2019 22:08:13 +0000 (18:08 -0400)]
[Relay][Runtime] Add VM compiler. (#3139)
* Implement the VM compiler
* Fix issues
* Fix ASF headers
* Fix test issue
* Apply typo fixes.
* Update src/relay/backend/vm/compiler.cc
Co-Authored-By: 雾雨魔理沙 <lolisa@marisa.moe>
* Refactor compiler
* Fix
* Fix
* Fix in benchmark
* Fix
* Address comments
hlu1 [Sat, 11 May 2019 05:55:11 +0000 (22:55 -0700)]
[Bugfix] Check file exists before removing it (#3178)
lixiaoquan [Sat, 11 May 2019 04:56:01 +0000 (12:56 +0800)]
[Relay][TensorFlow] Support tf.math.reduce_prod (#3166)
Steven S. Lyubomirsky [Sat, 11 May 2019 00:25:54 +0000 (17:25 -0700)]
Register all operators' Python attributes in Python so they can be easily accessed from Python code (#3175)
Lianmin Zheng [Fri, 10 May 2019 23:36:54 +0000 (07:36 +0800)]
[HybridScript] Capture constant external python variables (#3157)
lixiaoquan [Fri, 10 May 2019 17:14:39 +0000 (01:14 +0800)]
Fix a tensorflow test bug. (#3165)
Length of input_shape isn't always 4.
Zhi [Fri, 10 May 2019 04:29:16 +0000 (21:29 -0700)]
[codegen] heterogeneous build for c++ (#3144)
* heterogeneous build for c++
* merge relay buildmodule to codegen build
* use module split
* use target_host
* remove sse3
* retrigger ci
Yinghai Lu [Thu, 9 May 2019 15:46:10 +0000 (08:46 -0700)]
Fix a multithreaded bug in llvm LazyInitJIT (#3158)
Leyuan Wang [Thu, 9 May 2019 15:44:47 +0000 (08:44 -0700)]
add more syncs (#3151)
Jared Roesch [Thu, 9 May 2019 06:09:15 +0000 (02:09 -0400)]
[Relay][Runtime] Implementation of Relay VM (#2889)
* Implement the virtual machine
Co-Authored-By: wweic <ipondering.weic@gmail.com>
* Fix rebase build issues
* Reorganize vm.py and fix allocator bug
* Remove compiler
* Remove tests
* Remove backend/vm/vm.cc too
* Fix docs
* Fix doc
* Fix doc
* Add vm docs
* Remove change to dead_code.cc
* Remove Relay logging
* Remove reduce
* Update include/tvm/runtime/vm.h
Co-Authored-By: jroesch <roeschinc@gmail.com>
* Reformat
* Update include/tvm/runtime/vm.h
Co-Authored-By: jroesch <roeschinc@gmail.com>
* Address feedback
* Update include/tvm/runtime/vm.h
Co-Authored-By: jroesch <roeschinc@gmail.com>
* Apply suggestions from code review
Co-Authored-By: jroesch <roeschinc@gmail.com>
* Fix a couple outstanding comments
* Last couple comments
* Update include/tvm/runtime/vm.h
Co-Authored-By: jroesch <roeschinc@gmail.com>
* Address code review feedback
* Fix final comment
* Address comments
* Error reporting and example
* add Const
* Explicitly delete copy assignment operator
* Fix rebase
* Pass 3rd arg to fusion
Bing Xu [Thu, 9 May 2019 04:06:33 +0000 (21:06 -0700)]
[BuildModule] Fix AlterLayout Pass (#3155)
Yao Wang [Thu, 9 May 2019 00:21:41 +0000 (17:21 -0700)]
[Relay][Op] Adaptive pooling (#3085)
* Add topi adaptive_pool
* Use adaptive_pool to compute global_pool
* Add relay adaptive pool2d
* Fix lint
* Fix typo
* Minor change
* Change support level to 10
* Add contrib
* Remove global pool schedule
* Add contrib module
* Fix lint
* Update doc
* Update doc
Luis Vega [Wed, 8 May 2019 16:59:00 +0000 (09:59 -0700)]
[RFC] [VTA] [TSIM] Enabling Cycle-Accurate Hardware Simulation for VTA #3009 (#3010)
* merge files
* move verilator to the right place
* change name to tsim
* add default rule to be build and run
* add README for tsim
* Update README.md
* add some structural feedback
* change name of VTASim to VTADPISim
* more renaming
* update comment
* add license
* fix indentation
* add switch for vta-tsim
* add more licenses
* update readme
* address some of the new feedback
* add some feedback from cpplint
* add one more whitespace
* pass pointer so linter is happy
* pass pointer so linter is happy
* README moved to vta documentation
* create types for dpi functions, so they can be handle easily
* fix pointer style
* add feedback from docs
* parametrize width data and pointers
* fix comments
* fix comment
* add comment to class
* add missing parameters
* move README back to tsim example
* add feedback
* add more comments and remove un-necessary argument in finish
* update comments
* fix cpplint
* fix doc
Zhi [Wed, 8 May 2019 15:23:10 +0000 (08:23 -0700)]
fix python lint warnings (#3145)
Tianqi Chen [Wed, 8 May 2019 15:14:08 +0000 (08:14 -0700)]
[CI] Always run cpptest during build to ensure library correctness (#3147)
Bing Xu [Wed, 8 May 2019 07:16:15 +0000 (00:16 -0700)]
Relay C++ Build Module (#3082)
* [Relay] C++ Build module
* asdf
Leyuan Wang [Wed, 8 May 2019 04:51:00 +0000 (21:51 -0700)]
[Bugfix][TOPI] conv2d_transpose bugfix (#3138)
* deconv tests
* deconv bug fixed for certain cases tests added
Marcus Shawcroft [Wed, 8 May 2019 04:50:44 +0000 (05:50 +0100)]
[DOC] fix :code: markup syntax (#3140)
Wei Chen [Wed, 8 May 2019 03:52:24 +0000 (20:52 -0700)]
Handle vectorize for LE statement (#3137)
* Handle vectorize for LE statement
Fix a new cases introduced by commit
7afbca5691fdb599cd90b043d5a5036e55cae2d6
* Add test
masahi [Sun, 5 May 2019 12:17:29 +0000 (21:17 +0900)]
[ROCm] Fix dense autotvm template registration (#3136)
* Fix rocm dense autotvm template
* suppres lint warning
Yong Wu [Sun, 5 May 2019 08:08:10 +0000 (01:08 -0700)]
[Relay][Frontend] add log op in tf frontend (#3111)
* [Relay][Frontend] add log op in tf frontend
* address comment
Lianmin Zheng [Sun, 5 May 2019 08:05:18 +0000 (16:05 +0800)]
[TOPI] Fix mali conv2d performance regression (#3131)
* [TOPI] fix mali conv
* fix typo
* address comments
Tianqi Chen [Sat, 4 May 2019 01:07:14 +0000 (21:07 -0400)]
[ARITH] Constraint-aware ConstIntBound, Enhance CanonicalSimplify (#3132)
Jessica Davies [Fri, 3 May 2019 09:48:18 +0000 (11:48 +0200)]
[DOC] Developer documentation for InferBound pass. (#3126)
* Developer documentation for InferBound pass.
Marcus Shawcroft [Thu, 2 May 2019 16:11:37 +0000 (17:11 +0100)]
[DOC] Various documentation improvements (#3133)
Jared Roesch [Thu, 2 May 2019 16:10:34 +0000 (12:10 -0400)]
[Relay][Runtime] Add memory manager for NDArray (#3121)
* Add support for custom NDArray memory management
Credit to @icemelon9 and @wweic
* Fix copy-paste issue
* Fix naive allocator.h
* Remove buffer field
* Apply Wei's suggestions.
Co-Authored-By: jroesch <roeschinc@gmail.com>
* Fix Wei's suggestion
* Fix go rts
* Break MM dependency
* Add docs and clean up diff
* Add more docs
* Move to VM folder
* Fix lint
* Remove Go dep.
* Rename to Empty
* Address Haichen's comments
Haichen Shen [Thu, 2 May 2019 15:59:22 +0000 (08:59 -0700)]
Add MXNet converter for RNN layer ops (#3125)
Tianqi Chen [Thu, 2 May 2019 15:52:13 +0000 (11:52 -0400)]
[LINT] Add more allowed file type
Jared Roesch [Thu, 2 May 2019 13:54:52 +0000 (09:54 -0400)]
[Relay][Runtime] Add support for virtual machine Objects (#3120)
Lianmin Zheng [Thu, 2 May 2019 04:30:28 +0000 (12:30 +0800)]
Update CONTRIBUTORS.md (#3130)
Marcus Shawcroft [Wed, 1 May 2019 21:13:36 +0000 (22:13 +0100)]
[DOC] Add missing targets to target_name documentation. (#3128)
Yida Wang [Wed, 1 May 2019 20:28:01 +0000 (13:28 -0700)]
Minor addition to graph runtime debug (#3129)
* print op names in graph runtime debug
* fix lint
Zhao Wu [Wed, 1 May 2019 18:18:15 +0000 (02:18 +0800)]
Fix PRelu layout in Relay (#3013)
* Fix PRelu layout in Relay
* Fix cpplint
* Add PRelu test case
Marcus Shawcroft [Wed, 1 May 2019 16:05:18 +0000 (17:05 +0100)]
[DOC] various assorted grammar fixes (#3127)
* Correct spelling of 'inavlid'
* [DOC] correct spelling of 'schdule'.
* [DOC] clean up use of abbreviation "interop"
* [DOC] capitalize API abbreviation consistently
* [DOC] correct spelling of 'peformed'.
* [DOC] correct spelling of 'intermidiate'
* Remove trailing white space.
* Correct spelling of 'parametrization'.
* [DOC] minor improvements to Range documentation.
songqun [Wed, 1 May 2019 15:03:52 +0000 (08:03 -0700)]
[FRONTEND][TFLITE] Add FULLY_CONNECTED op into tflite frontend, support Inception V4 (#3019)
* Add FULLY_CONNECTED op into tflite frontend, support Inception V4
* Fix comment style in TF Lite tests.
lixiaoquan [Wed, 1 May 2019 15:02:12 +0000 (23:02 +0800)]
[Relay][Tensorflow] Allow an op as loop var. (#3056)
Zhi [Wed, 1 May 2019 03:42:27 +0000 (11:42 +0800)]
[RELAY][FUSION] Enhance fusion rule that starts from elemwise and broadcast (#2932)
* [relay][bugfix] fuse injective to elemwise and broadcast
* enhance fusion for prarllel injectiveOD
* check if tensor in schedule
* fix codegen
* fix lint
* update
* lint
Haichen Shen [Wed, 1 May 2019 00:10:19 +0000 (17:10 -0700)]
[Bugfix] Fix type code error for StringImm (#3050)
Rahul [Tue, 30 Apr 2019 22:43:46 +0000 (15:43 -0700)]
Fixing a doc nit (#3123)
URLs to the authors repo for these tutorials had an extra
`https://`, this patch removes that.
Jared Roesch [Mon, 29 Apr 2019 19:54:16 +0000 (12:54 -0700)]
Fix bug in ONNX importer (#3084)
Leyuan Wang [Mon, 29 Apr 2019 03:47:21 +0000 (20:47 -0700)]
[Relay][TOPI] Gluncv SSD support on the GPU (#2784)
* ssd gluoncv gpu op updated
* ssd gluoncv gpu op updated
* tutorials and testes modified
* tutorials and testes modified
* fix lint
* fix lint
* address comment
* multibox bug fixed
* space line added
* use less threads per block
* use less threads per block
* less threads per block for get valid count
* less threads per block for get valid count
* merge with master
* Revert "less threads per block for get valid count"
This reverts commit
08896cfccc34b0b2a1646d01d01ea4cad73941c4.
* Revert "less threads per block for get valid count"
This reverts commit
08896cfccc34b0b2a1646d01d01ea4cad73941c4.
* typo fixed
* elem length made to a variable
* fix lint error
* fix lint error
* lint fixed
* bug fixed
* bug fixed
* lint fixed
* error fixed
* error fixed
* test ci
* test ci
* seperate argsort to be an independent op
* seperate argsort to be an independent op
* fix lint
* fix lint
* remove unsupported models
* typo fixed
* argsort added to realy
* solve conflicts with master
* fix lint
* fix lint
* test push
* Revert "test push"
This reverts commit
6db00883fab6cc06bddf564c926bb27c874397d8.
* fix lint error
* fix more lint
* cpu test_sort udpated
* debug ci
* nms fixed
* expose argsort to relay frontend
* test ci
* fix lint
* sort register error fixed
* fix nnvm
* nms type fixed
* adaptive pooling added to relay
* Revert "adaptive pooling added to relay"
This reverts commit
1119f1f2c055753e0cc5611627597749134c5c8c.
* fix lint
* expose argsort op
* fix lint
* fix lint
* fix lint
* sort test updated
* sort bug fixed
* nnvm error fixed
* fix argsort default data type returned to be float insteaf of int
* fix lint
* fix lint
* test fixed
* fix valid count
* fix titanx bug
* tutorial add both targets
* titanx error fixed
* try to fix CI old gpu error
* try to solve CI GPU error
* get_valid_count added
* reverse get_valid_count
* get valid count optimized
* address comments
* fix ci error
* remove unessesary block sync
* add back one sync
* address comments
* address more comments
* more comments
* move sort to be indepent algorithm
* typo fixed
* more typos
* comments addressed
* doc updated
* fix pylint
* address final comments
* apache license added
Yizhi Liu [Mon, 29 Apr 2019 02:25:38 +0000 (19:25 -0700)]
[Lang] Fix undef BijectiveLayout and add scalar layout support (#3105)
Gemfield [Mon, 29 Apr 2019 02:24:28 +0000 (10:24 +0800)]
porting new upsample test case from nnvm to relay (#3115)
masahi [Mon, 29 Apr 2019 02:18:41 +0000 (11:18 +0900)]
[Relay, OpFusion] Better tuple fusion implementation (#3092)
Tianqi Chen [Sun, 28 Apr 2019 20:21:08 +0000 (13:21 -0700)]
[LINT] recover lint error, add asf header check (#3117)
Tianqi Chen [Sun, 28 Apr 2019 19:04:19 +0000 (12:04 -0700)]
[CI] Add file type check (#3116)
Wuwei Lin [Sun, 28 Apr 2019 03:48:34 +0000 (11:48 +0800)]
[TOPI] Fix group_conv2d unit test (#3113)
MaxXing [Sun, 28 Apr 2019 03:20:38 +0000 (11:20 +0800)]
fixed some typos (#3112)
Pedro Larroy [Sat, 27 Apr 2019 02:56:34 +0000 (19:56 -0700)]
Check that the node is not null, add contains to OpMap (#3037)
Meghan Cowan [Sat, 27 Apr 2019 02:55:22 +0000 (19:55 -0700)]
[TOPI] Bitserial dense operators for CPU (#3051)
Bing Xu [Sat, 27 Apr 2019 02:49:24 +0000 (19:49 -0700)]
[ROCM] Fix conv2d (#3107)
Ruizhe Zhao (Vincent) [Sat, 27 Apr 2019 02:15:21 +0000 (03:15 +0100)]
Fixed issue #3069 by checking op tag (#3070)
* Fixed issue #3069 by adding in_channels
* Registerd group_conv2d_nchw as topi compute
* Improved by checking tag value
* Removed group_conv2d_nchw topi registration
* Added test for relay group_conv2d_nchw
* Added assertions to forbid small group size
* Removed hard-coded oc_block_factor
* Added explanatory comments to group_conv2d_nchw_cuda
* Updated group_conv2d_nchw_cuda schedule
Removed 'direct' CUDA tests
* Reverted an accidental change in a conv2d test
* Fixed indentation problems
* Fixed a mis-commented line
* Reverted change in group_conv2d_nchw tag
* Removed commented int8 group_conv2d test
* Fixed group size assertions in group_conv2d_nchw_cuda
Salem Derisavi [Fri, 26 Apr 2019 21:10:42 +0000 (17:10 -0400)]
1) fixed a functional bug in loop partitioning algorithm that is exposed when double splitting with indivisible factors 2) added a testcase (#2956)
Salem Derisavi [Fri, 26 Apr 2019 16:49:29 +0000 (12:49 -0400)]
[TVM][ARITH] Teach BoundDeduce to handle the case in which target var can appear in rhs of expression (#2795)
* target variable can now appear in either lhs or rhs of the expression to be analyzed
* removed extra spaces
Wuwei Lin [Fri, 26 Apr 2019 16:41:54 +0000 (00:41 +0800)]
[Relay, Quantization, TOPI] int8 dense on CUDA & Dense op quantization (#2877)
* Quantize dense layers
* Add out_dtype arggument to dense; Add dense_int8 on CUDA
* Add topi unittest of dense int8
* Fix relay
* Fix topi integration
* Fix quantization
* Update dense_rewrite
* Triger CI
* Change qconfig quantize_dense to quantize_op
* Fix
* Remove quantize_op from qconfig
Tianqi Chen [Fri, 26 Apr 2019 16:09:11 +0000 (09:09 -0700)]
[COMMUNITY] @vinx13 -> committer (#3100)
Siva [Fri, 26 Apr 2019 15:27:30 +0000 (20:57 +0530)]
[TEST][FLAKY] fix for #3099 (#3101)
lixiaoquan [Fri, 26 Apr 2019 05:57:37 +0000 (13:57 +0800)]
[Relay][TensorFlow] Remove 'input_0d_mismatch' special handling (#3087)
* [Relay][TensorFlow] Remove 'input_0d_mismatch' special handling
* Add more tests.
* Cover the case that strided_slice outputs a scalar
Logan Weber [Thu, 25 Apr 2019 22:38:40 +0000 (15:38 -0700)]
Add VSCode directories to gitignore (#3095)
Hiroyuki Makino [Thu, 25 Apr 2019 18:05:42 +0000 (03:05 +0900)]
[Relay][TOPI] Add rsqrt operator (#2949)
Josh Pollock [Thu, 25 Apr 2019 17:56:46 +0000 (10:56 -0700)]
[Relay][Text Format] Fix Pretty Printing Annotations (#3041)
Liang-Chi Hsieh [Thu, 25 Apr 2019 17:49:50 +0000 (01:49 +0800)]
Use bridge network and expose port on macOS when launch docker image (#3086)
eqy [Thu, 25 Apr 2019 03:16:59 +0000 (20:16 -0700)]
check in (#3089)
OuHangKresnik [Wed, 24 Apr 2019 22:17:40 +0000 (06:17 +0800)]
Fix UnboundLocalError: local variable 'tensor' referenced before assignment (#3074)
Gemfield [Tue, 23 Apr 2019 03:50:55 +0000 (11:50 +0800)]
Enhance upsample operator to adapt onnx opset version 9 for nnvm comp… (#2968)
* Enhance upsample operator to adapt onnx opset version 9 for nnvm compiler
* Add upsample test case for newer opset in nnvm
* re-trigger the CI
Bing Xu [Mon, 22 Apr 2019 23:21:47 +0000 (16:21 -0700)]
[Relay] fix target string (#3071)
Liang-Chi Hsieh [Mon, 22 Apr 2019 00:17:50 +0000 (08:17 +0800)]
Fix code comment and typos. (#3063)
Yong Wu [Sun, 21 Apr 2019 06:59:22 +0000 (23:59 -0700)]
[Frontend][TF] Fix Placeholder issue (#2834)
* [Frontend][TF] Fix Placeholder issue
* Add test cases
Lianmin Zheng [Sat, 20 Apr 2019 23:20:03 +0000 (07:20 +0800)]
[TOPI] Rename output tensors for better readability (#3006)
hlu1 [Sat, 20 Apr 2019 00:50:34 +0000 (17:50 -0700)]
[Bugfix] Fix winograd nnpack fp16 (#3046)
masahi [Fri, 19 Apr 2019 16:20:19 +0000 (01:20 +0900)]
fix PostOrderVisit signature (#3048)
lixiaoquan [Fri, 19 Apr 2019 16:19:22 +0000 (00:19 +0800)]
[RELAY] Avoid unnecessarily reconstructing FunctionNode. (#3047)
Yong Wu [Fri, 19 Apr 2019 01:07:25 +0000 (18:07 -0700)]
[Relay][Frontend] TF Tile Round Sign Pow Exp Reverse (#2960)
* [Relay][Frontend] TF Round Sign Pow Exp Reverse
* fix ci
* fix comments
Siju [Thu, 18 Apr 2019 22:20:11 +0000 (03:50 +0530)]
Bugfix for path issues (#3038)
Balint Cristian [Thu, 18 Apr 2019 22:14:00 +0000 (01:14 +0300)]
Additional fix for PR#2972 (#3044)
雾雨魔理沙 [Wed, 17 Apr 2019 20:16:37 +0000 (13:16 -0700)]
[Relay] Add printing for ADT Type (#3030)
* Update pretty_printer.cc
* Update pretty_printer.cc
Yinghai Lu [Wed, 17 Apr 2019 20:06:30 +0000 (13:06 -0700)]
Implement relay nn.bias_add compute in C++ (#3027)
* Implement nn.bias_add compute in C++
* Address comments
* Remove unnecessary check
Balint Cristian [Wed, 17 Apr 2019 14:20:41 +0000 (17:20 +0300)]
Support Deriving channels when it is not provided in AlterLayout. (#2972)
雾雨魔理沙 [Wed, 17 Apr 2019 05:33:31 +0000 (22:33 -0700)]
[Relay] Fix Fuse (#3035)
* save
* fix
* Update fuse_ops.cc
Pedro Larroy [Wed, 17 Apr 2019 00:16:23 +0000 (17:16 -0700)]
Update dmlc-core, fix default ctors of NodeEntry (#3017)
Steven S. Lyubomirsky [Tue, 16 Apr 2019 20:44:30 +0000 (13:44 -0700)]
Ensure interpreted functions can take values that are not TensorValues (#3015)