* rename the nchw and pass the unit test; going to do it for nhwc depthwise
* bug with fusion
* nchw works fine; nhwc float32 problem remains
* still cannot bind them together
* fusion works
* syntax fix
* all bugs fixed; test cases pass
* minor fix on nn.h
* __init__ updated
* pull request updated
* build_module added
* typo fixed
* another typo fixed
* conv2d gpu scheduler for two layouts moved to tvm
* changes made according to CR
* conv2d_nchw formating updated, conv2d_hwcn tests updated
* lint error fixed
* element wise operator schedule fusing fixed for conv2d
* conv2d_nchw topi test added, all resnet workloads now pass
* conv compute lint error fixed
* fixed python 3 compatibility problem
* conv2d tensor input support added, test typo fixed, ir_pass.Simplify changed to util.get_const_int
* fixed channel numer < 4 error, also made sure other splitting factor woudn't be 0
* [WIP] C++ topi contributions
Summary:
This diff implements C++ topi contributions for:
- relu with parametrix threshold
- pad with generic padBefore / padAfter specification
- matmult with transposes
- conv2d_nchw, conv2d_hwcn with runtime constant padding and strides
- depthwise_conv2d_nchw with runtime constant padding and strides
- group_conv2d_ngchw with runtime constant padding and strides
- broadcast_to a broadcastable shape
- broadcast_bop where bop is an usual binary op (+ - * / %)
Convolution padding is implemented using the pad operation.
To avoid extra memory consumption, it is generally recommended to inline the padding with the autoinliner.
Unfortunately in its current form the elemwise checks are too restrictive to allow inlining.
So this diff also proposes an extension to LHS injective (i.e. no reduction axis in the current IR design)
Test Plan:
Tested in C++ testsuite in a separate repository, I am looking for suggestions to quickly spin up some tests for tvm.
Reviewers: tqchen
Subscribers:
Tasks:
Tags:
Blame Revision:
* Review + Lint + GSG C++
* [tvm4j] RPC Server
* [tvm4j] fix recursively function calling; connect to proxy server; osx rename .so to .dylib
* [tvm4j] test case for proxy connection; thread pool for serving
* Typofix.
Signed-off-by: Edward Z. Yang <ezyang@fb.com>
* Probe for nvrtc in lib directory as well.
Signed-off-by: Edward Z. Yang <ezyang@fb.com>
* Conda build recipe for TVM.
Signed-off-by: Edward Z. Yang <ezyang@fb.com>