Zhi [Tue, 25 Aug 2020 16:07:02 +0000 (09:07 -0700)]
[FIX][VM] Fix relay vm optimize (#6322)
* [FIX][VM] Fix relay vm optimize
* retrigger ci
lhutton1 [Tue, 25 Aug 2020 16:04:20 +0000 (17:04 +0100)]
[BYOC][ACL] Enable remote device via environment variables (#6279)
* [BYOC][ACL] Enable remote device via environment variables
Improves the ACL remote testing infrastructure by allowing a remote device to be specified via environment variables. This means external scripts can be used to enable the runtime tests. By default an RPC server will not be used and the runtime tests will be skipped.
Change-Id: I8fc0b88106683ac6f1cbff44c8954726325cda21
* Use json file as configuration for tests
Change-Id: Iadce931d91056ed3a2d57a49f14af1ce771ae14b
* Do not load the test config during class creation
Change-Id: If718b5d163e399711111830f878db325db9c5f84
* Add check for existence of file
Change-Id: I2568bca7f4c3ad22ee8f9d065a9486ee3114f35c
Dongming Yang [Tue, 25 Aug 2020 00:08:41 +0000 (08:08 +0800)]
[Frontend][Relay] Keras softmax and prelu fix (#6278) (#6278)
* prelu and softmax with NHWC layout consideration
* fix lint
* fix lint
Co-authored-by: Dongming Yang <dongming.yang@streamcomputing.com>
masahi [Mon, 24 Aug 2020 20:15:23 +0000 (05:15 +0900)]
[OpFusion] Make the max number of fused ops configurable (#6327)
Yong Wu [Mon, 24 Aug 2020 13:19:57 +0000 (21:19 +0800)]
[Relay] Support for PyTorch Non-Maximum Suppression (#6314)
* [Relay] Support for PyTorch Non-Maximum Suppression
* fix comment
* add verify_model_vm
Chenfan [Mon, 24 Aug 2020 10:46:31 +0000 (18:46 +0800)]
[Ansor][AutoTVM v2.0] Phase 2: Basic GPU Sketch Search Policy (#6269)
* Add PreloadMeasuredStates & Split search_policy.py
* Add GPU sketch rule
* Update
* Bug fix for log record
* Lint fix
* Update tutorial
* Update
* UT fix
* Remove tutorial
* Update
* Update
* Update UT
* Lint fix
* Update
* Update
Tianqi Chen [Sat, 22 Aug 2020 15:30:48 +0000 (08:30 -0700)]
[RUNTIME][FFI] Fix cython FFI compact with np.int64 (#6321)
雾雨魔理沙 [Sat, 22 Aug 2020 05:11:50 +0000 (22:11 -0700)]
[Relay] Make check stricter: disallow inserting function with free vars into module. (#6313)
* save
lint
lint
fix test
fix test
* fix
Yao Wang [Sat, 22 Aug 2020 01:54:26 +0000 (18:54 -0700)]
[Frontend][Pytorch]Add Pytorch advanced indexing (#6318)
* Add Pytorch advanced indexing
* Minor fix for test
* Fix for cuda
Lily Orth-Smith [Sat, 22 Aug 2020 01:03:43 +0000 (18:03 -0700)]
[BUG_FIX] Fix resize test (#6298)
* fix resize tests
* add different scale to resize tests
* fix dynamic to static resize test
* fix error throwing in topi resize
* fix topi and importer tests
* fix lint
* flakey test failed
* make resize test less sensitive; had floating point rounding err on gpu
* remove nearest_neighbor + half_pixel option from pytorch importer
* remove nearest_neighbor + half_pixel in upsample3d
sandyhu533 [Fri, 21 Aug 2020 20:47:47 +0000 (04:47 +0800)]
[RELAY][MXNET][FRONTEND] add support for MXNET numpy operators (#6054)
* [RELAY][MXNET][FRONTEND] add supports for OPs in numpy from mxnet
* Update test_forward.py
* Update mxnet.py
* Update mxnet.py
* Update test_forward.py
* update and bugfix
* test for multiple dtypes
* Update test_forward.py
* add data type and optimize coding style
* replace pytest.skip with @pytest.mark.skipif
* Update test_forward.py
* update pytest style
* Update test_forward.py
* Update test_forward.py
* Update test_forward.py
* Update test_forward.py
Co-authored-by: Ubuntu <ubuntu@ip-172-31-39-169.ap-northeast-1.compute.internal>
Tianqi Chen [Fri, 21 Aug 2020 17:53:39 +0000 (10:53 -0700)]
[TIR] Enforce buffer pointer var type to be consistent with dtype. (#6317)
Now that we have type_annotation in tir::Var.
We should make sure that the type annotation to be consistent with the dtype
in Buffer declaration and Allocation.
This change allows future passes to directly use the content type information via type_annotation.
This PR turns on the enforcement on Buffer and also fixed a few cases for Allocate.
A follow up PR need to fix a few more cases in the hybrid script parsing
before everything can be made consistent.
Rishabh Jain [Fri, 21 Aug 2020 17:32:42 +0000 (23:02 +0530)]
Retrigger build. (#6304)
Lily Orth-Smith [Fri, 21 Aug 2020 16:06:53 +0000 (09:06 -0700)]
[RELAY][DYN] Dynamic upsampling relay op (#6273)
* implementing upsampling op
* fix lint
* fix lint again
* add doc to upsampling shape func
* fix set attrs build problem
* fixing imports
* reverting data layout transform changes
* moved layout template to header file
* changing python module from nn.dyn to dyn.nn
* adding support for more layouts to upsampling
* fix lint
* fix upsampling doc
* change _nn.py doc
* failed flakey test
* fix build after merge
Zhao Wu [Fri, 21 Aug 2020 14:20:19 +0000 (22:20 +0800)]
[TEST][FLAKY] fix random fail (#6312)
* [TEST][FLAKY] fix random fail
* increase size and error check range
Josh Fromm [Fri, 21 Aug 2020 14:04:56 +0000 (07:04 -0700)]
[Target] Add python binding to new JSON target construction. (#6315)
* Add python binding to new JSON target construction.
* Added json string parsing and new test.
* Add error type.
* Add error type in json decoding check.
* Fix sphinx formatting.
Siju Samuel [Fri, 21 Aug 2020 04:07:04 +0000 (09:37 +0530)]
[COREML]multiple output support, reshape, split ops added (#6296)
* [COREML]multiple output support, reshape, split ops added
* Review comments addressed
masahi [Fri, 21 Aug 2020 02:29:45 +0000 (11:29 +0900)]
[Torch] Fix dtype handling for modules with integer parameters (#6311)
* return the correct type for GetAttr node
* keep _get_pytorch_value_type intact
* add test and handle quantized param
Matthew LeMay [Fri, 21 Aug 2020 00:45:17 +0000 (20:45 -0400)]
Changed TVMCTVMContext to TVMContext (#6306)
Dmitriy Smirnov [Thu, 20 Aug 2020 18:44:04 +0000 (19:44 +0100)]
Constant input attr added to fully connected operation in TFLite frontend (#6228)
* Constant input attr added to fully connected operation
An ability to handle constant input attr added to fully connected operation
Unit tests amended.
* renamed wrap_input to const_input
* removed extra spaces
Lily Orth-Smith [Thu, 20 Aug 2020 01:57:05 +0000 (18:57 -0700)]
[RELAY][DYN] Implementation of the dynamic pad operator (#6284)
Lianmin Zheng [Thu, 20 Aug 2020 01:38:10 +0000 (18:38 -0700)]
[AutoScheduler] Fix flaky test (#6307)
ZHANG Hao [Wed, 19 Aug 2020 16:49:00 +0000 (00:49 +0800)]
[Relay] change device annotation from post DFS to recursive (#6124)
* change device annotation from post DFS to recursive
* add testcast for recursive device propogation
mbaret [Wed, 19 Aug 2020 16:39:33 +0000 (17:39 +0100)]
[BYOC][ETHOSN] Introduce the Ethos-N BYOC integration (#6222)
* [BYOC][ETHOSN] Introduce the Ethos-N BYOC integration
This is the first of 3 PRs to introduce the Ethos-N
integration into TVM via the BYOC framework. It adds
support for partitioning and compiling for the
Ethos-N77 target with CPU fallback for unsupported
operators. Additionally, runtime support is added in
the form of an Ethos-N runtime module. In this initial
PR, only quantized concatenate and split are supported
with follow-up PRs adding support for many further operators.
Co-authored-by: Leo Blonk <Leo.Blonk@arm.com>
Co-authored-by: Tristan O'Connor <tristan.oconnor@arm.com>
Co-authored-by: Leandro Nunes <leandro.nunes@arm.com>
Co-authored-by: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-authored-by: Luke Hutton <luke.hutton@arm.com>
* Turn off USE_ETHOSN_HW by default
Change-Id: Ie2ce4528e16e93aa83df46f8a229c0ce89b45252
* Update capabilities file
Change-Id: Iebd0c62d6bc7e446662abdee4882ac874ad98aa3
* Fix missing header
Change-Id: I0c89e380dd1d795755a1884c06a7b317a99fe297
* Update cmake comments on ETHOSN_HW
Change-Id: I2e96a1c818a82e5174fd94e483b0bdb3e4375a7d
* Add checker for case when USE_ETHOSN=OFF and USE_ETHOSN_HW=ON
Change-Id: Id5c9cfb866914a0298b44ead40fcbe3764ce443c
* Fix 'available' boolean
Change-Id: I78e54fb9f472d2815886bea4d94b7247e0d129de
* Check availability in op registration
Change-Id: Iecfea7dca7301dd684199c9b32f99f2113fdfd56
* Remove unnecessary line
Change-Id: Idf5cab853027adb0b0292de877e6dc02683821d7
* Simplify getting output_size
Change-Id: If4643924768c2d7ea98525e9f792b7223cc2bcdf
* Remove unnecessary new line
Change-Id: Ia689c59cac28bd91e237ceecd829d8cf56d0d9c1
* Remove NOLINTS
Change-Id: I149b97b28b516c7d9288a0858b2fbf1497e70250
* Remove unused parts of PR
Change-Id: I2db5b89d8fe2c114ab92305cdcf06d0fc45f4d2a
* Fix CI Ethos-N settings
Change-Id: Idd955755d6f6d1cd3843462f627d0d952729e467
* Removed unnecessary line in infra
Change-Id: I0ea866adf5d9166db85dd82d013a631d991ae633
* Remove unnecessary len in infra
Change-Id: I869e8233d41c6ab7c2dc80f47d976c974043b80c
* Rename 'cpu_ops' to 'host_ops'
Change-Id: I79a6ffcfd48cd055d279f493c672ec82f0c68e5c
* Added explanation on mocking
Change-Id: I1e88c07a47464e44cb45c6a327ec9c7e2d70cc94
* IsEthosOp -> IsEthosnOp
Change-Id: I4fc1b462a74f8fae231ebafac614dd8d45be0feb
* Improve documentation in ethosn_api.h
Change-Id: I5586a7ba7ce71da667a6a9c6dd2e591028eb43b2
* No longer iterate over module when compiling
Change-Id: I80e1d494c6d574be06a2375e831343485712914d
* Move EthosnCompiler implementations into codegen.cc
Change-Id: I5bb6e9f62722d930d9dc040ac62bf87f29dd74c5
* Fix linting
Change-Id: Ia44ec741a5330ad289cc6b5cd2bb1ed784fe6afc
* Refactor EthosnAPI compilation functions into EthosnCompiler
Change-Id: Iee0aecbe43a84fefb437ab9ff064e3f8b42c80a4
* Improve docs for Tvm2Npu
Change-Id: Ia39e9e1508513ca39c1d585fbccc3ae38fcbb9fb
* Move more implementation out of headers
Change-Id: I1e33084ceb520b75f06b4d7a4acff5b9b2225bd5
* Move implementation in ethosn_api.h
Change-Id: I51ab386892a2aa84aa47d03641aac8468f5737ae
* Improve docs for capabilities.h
Change-Id: Iaaee508aafa1cbb7650a04ed87bd6c1b91823a58
* Use else() in cmake
Change-Id: I4b64a87f32b3616ec87c9937d9fc998b8dc5d7b4
* Use GetDataSize
Change-Id: I16988f3adbe6e03fc47fa0a77cb5febb7a02eaab
* Use const&
Change-Id: I664982d219f9a7d1f961dbfe84d12f66e2e5f5cb
* Fix python linting
Change-Id: Id965ccc037fd40cbdfcb58d922cc8d5fb8c87dfe
* Remove load/save to file
Change-Id: I7f8c3f5c8948c3f15551d28e3fee6e00120663ef
* data->data
Change-Id: Ifb861ebbfeaaf4b154f4b1515f83a46aecf86e50
* Remove specific cpu target
Change-Id: I920568cc7a81cd77d44f8604f571340a330f3e62
* Test export/load module
Change-Id: Ib605458127485e2015ac012ec515ced5900705f3
* Fix cmake garbage
Change-Id: I32f3c967192c7c278ef33c52cac5fb5da682cd1b
Co-authored-by: Leo Blonk <Leo.Blonk@arm.com>
Co-authored-by: Tristan O'Connor <tristan.oconnor@arm.com>
Co-authored-by: Leandro Nunes <leandro.nunes@arm.com>
Co-authored-by: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-authored-by: Luke Hutton <luke.hutton@arm.com>
masahi [Wed, 19 Aug 2020 11:50:36 +0000 (20:50 +0900)]
[Torch] Fix cast to long (#6301)
* [Torch] fix cast to long
* retrigger
Krzysztof Parzyszek [Wed, 19 Aug 2020 09:17:07 +0000 (04:17 -0500)]
[Hexagon] Initial support for Hexagon codegen (#6261)
* [Hexagon] Initial support for Hexagon codegen
This commit does not support parallel execution or prefetch.
LLVM 7 or later is required.
* Set native_vector_bits_ based on target features
* Initialize hvx_bytes
* Remove commented out line
Lianmin Zheng [Wed, 19 Aug 2020 00:51:10 +0000 (17:51 -0700)]
[Ansor][AutoTVM v2.0] Phase 1: XGBoost Cost Model (#6270)
* port xgb cost model
* add xgboost cost model
* fix lint
* address comments
* address comments
* Fix
Chenfan [Tue, 18 Aug 2020 23:21:09 +0000 (07:21 +0800)]
[Support] Add parallel_for support to run a loop in parallel (#6275)
Andrew Reusch [Tue, 18 Aug 2020 23:20:38 +0000 (16:20 -0700)]
Add tvm::support::hexdump() debug utility (#6154)
Yizhi Liu [Tue, 18 Aug 2020 23:19:39 +0000 (16:19 -0700)]
[Autodiff] Optimize and eliminate the Jacobian tensor for te.autodiff (#6078)
* [Autodiff] Optimize and eliminate the Jacobian tensor for te.autodiff
Co-authored-by: Sergei Grechanik <sergei.grechanik+h@gmail.com>
* fix lint
* fix clang-format
* add comments and magic number
* clang-lint
* address some comments
* remove FreeVarsVisitor
* fix constexpr lint
* fix lint
* fix lint
* add Map.Merge
* lint
* change Array::Concat & Map::Merge to global functions
* fix lint
* move functions to global
* static -> inline
Co-authored-by: Sergei Grechanik <sergei.grechanik+h@gmail.com>
Tianqi Chen [Tue, 18 Aug 2020 23:08:03 +0000 (16:08 -0700)]
[RUNTIME][REFACTOR] Use new to avoid exit-time de-allocation order problem in DeviceAPI (#6292)
Dmitriy Smirnov [Tue, 18 Aug 2020 16:43:29 +0000 (17:43 +0100)]
Gather operation with indices as tensor expr in TFLite frontend (#6168)
* gather with indices as tensor expr
Added handling of indices as tensor expr
to gather operation, unit tests amended
Code cheking out of boundary error refactored
in more "pythonic" way. Fixed bug in negative
axis value normalisation
* replaced with get_tensor_expr
masahi [Tue, 18 Aug 2020 14:06:33 +0000 (23:06 +0900)]
[Torch] Support index_select (#6295)
* support index select
* minor fix
Co-authored-by: masa <masa@pop-os.localdomain>
Tianqi Chen [Tue, 18 Aug 2020 05:50:57 +0000 (22:50 -0700)]
[TEST] use rpc.LocalSession for simple tests (#6294)
To avoid flaky due to networking.
GaryYuyjl [Tue, 18 Aug 2020 05:32:30 +0000 (13:32 +0800)]
[TOPI] Support int4/int8 conv2d tensor core with HWNC layout (#6121)
* int4 tensorcore
* a draft for new int4 schedule
* update layout
* add inline option
* clean code
* increase search space
* fix kernel shape
* update intrinsic
* update intrinsic
* support int4/int8 hwnc layout
* remove useless code
* remove useless code
* remove useless code
* remove useless code
* fix int8 transpose
* fix assert
* add asf header
* CI
* CI
* CI
* fix bug
fix bug
Co-authored-by: Leyuan Wang <laurawly@gmail.com>
Tianqi Chen [Mon, 17 Aug 2020 22:45:56 +0000 (15:45 -0700)]
[COMMUNITY] @kparzysz-quic -> committer (#6290)
Chris Sullivan [Mon, 17 Aug 2020 22:22:51 +0000 (15:22 -0700)]
[ONNX] Update slice to infer attributes when not graph inputs (#6276)
* Update ONNX Slice converter to infer slice attributes when necessary.
* Linting
Zhao Wu [Mon, 17 Aug 2020 16:38:31 +0000 (00:38 +0800)]
[random] support random fill (#5913)
Junru Shao [Mon, 17 Aug 2020 14:18:24 +0000 (07:18 -0700)]
[Build] Add cmake options into libinfo (#6286)
* [Build] Add cmake options into libinfo
* Address comments from @tqchen
* Add LLVM version to libinfo
Iswariya Manivannan [Mon, 17 Aug 2020 03:53:38 +0000 (05:53 +0200)]
[Frontend][Relay] Fix node indices attribute error for tensorflow 2.3 (#6288)
* Fix errors caused due to node attributes
* Add node_indices attr for old keras pkg support
Leandro Nunes [Sun, 16 Aug 2020 17:45:44 +0000 (18:45 +0100)]
TVMC - a command line driver for TVM (#6112)
* Introduce a command line driver to compile, run and tune models, using TVM graph runtime
* Include tvmc tests and integrate tvmc with linting, testing and CI
* RFC: https://discuss.tvm.ai/t/rfc-a-tvm-command-line-interface/5165
Co-authored-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-authored-by: Matthew Barrett <Matthew.Barrett@arm.com>
Co-authored-by: Dmitriy Smirnov <dmitriy.smirnov@arm.com>
Co-authored-by: Luke Hutton <luke.hutton@arm.com>
Co-authored-by: Giuseppe Rossini <giuseppe.rossini@arm.com>
Co-authored-by: Matthew Barrett <matthew.barrett@arm.com>
Co-authored-by: Elen Kalda <elen.kalda@arm.com>
Co-authored-by: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-authored-by: Jeremy Johnson <jeremy.johnson@arm.com>
Co-authored-by: Ina Dobreva <Ina.Dobreva@arm.com>
Co-authored-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-authored-by: Matthew Barrett <Matthew.Barrett@arm.com>
Co-authored-by: Dmitriy Smirnov <dmitriy.smirnov@arm.com>
Co-authored-by: Luke Hutton <luke.hutton@arm.com>
Co-authored-by: Giuseppe Rossini <giuseppe.rossini@arm.com>
Co-authored-by: Elen Kalda <elen.kalda@arm.com>
Co-authored-by: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-authored-by: Jeremy Johnson <jeremy.johnson@arm.com>
Co-authored-by: Ina Dobreva <Ina.Dobreva@arm.com>
Logan Weber [Sat, 15 Aug 2020 21:48:24 +0000 (14:48 -0700)]
Add Quantize/Dequantize Partitioning (#5940)
* Implement quant/dequant partitioning
on our way
get clooooooser
clean up (part 1)
clean up (part 2)
clean up (part 3)
clean up (part 4)
clean clean
cleaanaannanaaananaananaananaan
clkjsdflkjlfsjdflkj
revert parser changes
add docs
roll lint
roll lint
* add option to toggle fully integral check
* convert dtype collector to C++
* remove need for `with_dtype`
* remove unused imports
* roll lint
* partially address feedback
* roll lint
* upgrade to new parser
* retrigger CI
* roll the dice again
Junru Shao [Sat, 15 Aug 2020 14:05:40 +0000 (07:05 -0700)]
[Build] Reflect Compile-Time CMake Options into libtvm.so (#6280)
* Initial comit
* Address comments from @tqchen
Tianqi Chen [Sat, 15 Aug 2020 03:41:30 +0000 (20:41 -0700)]
[CI] Update ci-cpu to the latest (#6283)
Tristan Konolige [Sat, 15 Aug 2020 03:06:24 +0000 (20:06 -0700)]
Improve error messages for memory verifier and gpu memory verifier (#6281)
* [FIX] Print exactly what issues the GPU memory verifier encountered.
* [FIX] Print exactly why memory verifier failed.
Junru Shao [Sat, 15 Aug 2020 01:33:37 +0000 (18:33 -0700)]
[Target] Creating Target from JSON-like Configuration (#6218)
* [Target] Creating Target from JSON-like Configuration
* Address comments from Cody
* fix unittest
* More testcases as suggested by @comaniac
Dmitriy Smirnov [Fri, 14 Aug 2020 18:54:29 +0000 (19:54 +0100)]
Added support for tflite quantized maximum and minimum (#6018)
* Added support for tflite quantized maximum and minimum
* Unit test simplified
Bugfix in unit test. Unit test slightly simplified
* re-trigger CI
* renamed use_real_qnn to ignore_qnn_params
Matthew Brookhart [Fri, 14 Aug 2020 17:27:20 +0000 (10:27 -0700)]
Update precision in the ONNX strided_slice, update precision of ToScalar (#6272)
* Update precision in the ONNX strided_slice, update precision of ToScalar
* fix tests
Tristan Konolige [Fri, 14 Aug 2020 16:15:00 +0000 (09:15 -0700)]
[TESTS] Decrease test times by introducing testing model (#6235)
Adds a new testing model `tvm.relay.testing.synthetic` which is a small,
but representative model. Replaces resnet with this model in many tests.
Jared Roesch [Fri, 14 Aug 2020 16:13:42 +0000 (09:13 -0700)]
[Parser] Add support for parsing the any dimension. (#6277)
* Add case for any dimensions
* Fix second test case
wjliu [Fri, 14 Aug 2020 05:17:38 +0000 (13:17 +0800)]
add dilation in x86 NCHWc depthwise conv support (#4962) (#6267)
lhutton1 [Thu, 13 Aug 2020 16:21:35 +0000 (17:21 +0100)]
[BYOC][ACL] Add support for dense (fully connected) layer (#6254)
* [BYOC][ACL] Add support for dense (fully connected) layer
This patch adds the ability to offload dense (or fully connected) operators to ACL.
For fp32 a single dense layer can be offloaded, or the composite variant: nn.dense, nn.bias_add? (ACL does not currently offer fused activation).
For uint8: qnn.dense, nn.bias_add?, qnn.requantize
Change-Id: I83ea00b2aa6bdc5d9ef5cd6d54bbf981e523bd14
* Don't offload dense layer with unsupported datatype
Change-Id: I856eb2298499fdf22c172ba7f85d21033d3cc920
Lily Orth-Smith [Thu, 13 Aug 2020 16:08:34 +0000 (09:08 -0700)]
[Relay][Dyn] Dynamic full operator (#6260)
* moved full from other branch
* fixed some typos
* fix lint
* add final newline
* fix int64 test
cloud-mxd [Thu, 13 Aug 2020 15:36:59 +0000 (23:36 +0800)]
fix cuda half math function is undefined: hpow, htanh (#6253)
Tom Gall [Thu, 13 Aug 2020 15:34:34 +0000 (10:34 -0500)]
Trivial fix, up the rodata section for the discovery board to 512 bytes. (#6259)
This is more reasonable as the trivial tflite example module needs 208 bytes.
Signed-off-by: Tom Gall <tom.gall@linaro.org>
Tianqi Chen [Thu, 13 Aug 2020 15:34:04 +0000 (08:34 -0700)]
[LINT] Fix clang-format (#6264)
Giuseppe Rossini [Thu, 13 Aug 2020 14:41:45 +0000 (15:41 +0100)]
Improve NHWC depthwise convolution for AArch64 (#6095)
* Improve NHWC depthwise convolution for aarch64
We created a default schedule (no auto-tuning or tensorization) named
depthwise_conv2d_nhwc which does a decent job at optimizing depthwise
for NHWC layouts (on aarch64).
Change-Id: I01e32903f6c1950623f33eae18484e70244fe0af
* Add tuning knobs in depthwise schedule
Change-Id: I15080e7f12b16e6c6aba99a04e42023845eeabf1
* Introduce padding policy
Change-Id: If12a6d05dce9153861550ddef1ee5216809dd1e1
* Vectorize padding
Change-Id: I7e2062a40358bf111c0366a449945eb077fb2e30
* Legalize depthwise convolution (2x improvement) and fix tuning issue
Change-Id: I4b82c58b167e40b0b7747d28293bbb488c505dd9
* Adding assert on padding
Change-Id: Idf8eeaaface5eb7799109cd00f437e404778b9cd
* Fix python linting
Change-Id: Iac16a8daea1268f0eb331fe4ec18a62408106cf9
* Removing commented code
Change-Id: I1412f22ad9864273d77a7bf38a6768694339b7f0
* Revert test file to make CI pass
Change-Id: Ica3eff8f9f0fd4c6f32f7ae80adc922f8b16cec9
* Enabling only arm_cpu tests
Change-Id: Icbaafcb39e892a5d1a4685133c1699e4d1a8e07e
* Rebasing
Change-Id: Ibb23f1d4e0d0107e4e3b3571437161cdc2ee2909
Tom Gall [Thu, 13 Aug 2020 03:18:37 +0000 (22:18 -0500)]
update tutorial to new TARGET as micro_dev is no more (#6262)
Signed-off-by: Tom Gall <tom.gall@linaro.org>
Leandro Nunes [Wed, 12 Aug 2020 21:18:36 +0000 (22:18 +0100)]
[CI] Add apt repository for clang-11 and llvm-11 (#6256)
- Add specific apt repositories to install clang-11 and llvm-11
- Fix #6255
Lianmin Zheng [Wed, 12 Aug 2020 21:00:49 +0000 (14:00 -0700)]
[Ansor][AutoTVM v2.0] Phase 1: feature extraction for cost models (#6190)
* [AutoScheduler] add feature extraction
* fix lint
* fix gpu test
* address comments
* improve flop estimation
* rebase
* refactor with group
* fix
* Apply suggestions from code review
Trevor Morris [Wed, 12 Aug 2020 16:00:55 +0000 (09:00 -0700)]
Support mxnet _contrib_SyncBatchNorm (#6245)
Siju Samuel [Wed, 12 Aug 2020 15:50:42 +0000 (21:20 +0530)]
[COREML]Reduceops support added to frontend (#6252)
Balint Cristian [Wed, 12 Aug 2020 15:50:16 +0000 (18:50 +0300)]
Fix newer GCC compiler warnings. (#6257)
Zhi [Wed, 12 Aug 2020 08:12:56 +0000 (01:12 -0700)]
[TOPI] Fix reduction (#6250)
Tianqi Chen [Wed, 12 Aug 2020 00:32:57 +0000 (17:32 -0700)]
Revert "fix cuda half math function is undefined: hpow, htanh (#6225)" (#6249)
This reverts commit
ed04cdd35f1990959ec788be0131b1388fd11d31.
Jared Roesch [Tue, 11 Aug 2020 23:31:03 +0000 (16:31 -0700)]
[Parser] Parser 2.0 part 2 (#6162)
* Add code from livestream with JK
* Fix errors parsing ResNet
* Parse metadata section efficiently and do most of plumbing to resolve metadata section references.
* WIP
* Change meta reference to an operator
* Meta references now work
* MetaReference expansion now works
* Start working on source map and move diagnostic context
* Convert tokenizer and parser to use new machinery
* Kill to_json
* Fix comment in type_infer.cc
* Remove old parser
* Rename parser tests and remove old ones
* Record span end information
* Convert to using spans everywhere
* Add span fields back to all Relay constructors
* Start passing spans
* Pass spans around visitors
* Format
* Fix
* Fix
* disable reference lint from string helpers
* Fix tokenizer
* Fix issue with empty metadata section
* Document new span fields and small tweaks
* Formatting
* Add span doc fields
* Add format tweak
* Improve errors and fix the semantic version tags in Prelude
* Update gradient.rly
* Clean up broken spans
* Clean up parser tests and turn on previously skipped tests
* Update errors to handle skipped cases
* Tweak
* Tweak
* Format
* Fix some minor issues with ADT tests
* Format
* Fix path
* WIP
* WIP
* Fix ir_text_printer
* format
* Formatted
* More formatting
* Repair test cases
* Fix CI
* Retrigger CI
Chenfan [Tue, 11 Aug 2020 20:53:00 +0000 (04:53 +0800)]
[Ansor][AutoTVM v2.0] Phase 2: Basic CPU Sketch Search Policy (#6184)
* Init commit to pass the compile
* First commit to pass the test
* Update
* Add UTs for sketch generation
* Update
* Add ASF to new UT file.
* Update rule for winograd
* Update
* File renamed
* Lint fix
Chris Sullivan [Tue, 11 Aug 2020 20:04:26 +0000 (13:04 -0700)]
[JVM] Support overriding RPCWatchdog termination behavior on Android and other platforms (#6216)
* Instead of performing a system exit and leaving unhandled items on
the activity stack, finish the RPCActivity and return cleanly to the
MainActivity where the RPCActivity can be restarted automatically.
* Update doc. string for checkstyle.
Krzysztof Parzyszek [Tue, 11 Aug 2020 15:35:06 +0000 (10:35 -0500)]
Fix division range estimation error in simplifier (#6244)
Division a/b assumes maximum values when b is close to 0. Account
for that when estimating the range for a/b when 0 belongs to the
estimated range for b.
Assume that a division by zero cannot happen in a valid program,
so in such cases treat the range for b as a union
[b.min_value, -1] u [1, b.max_value]
Rishabh Jain [Tue, 11 Aug 2020 08:05:55 +0000 (13:35 +0530)]
[TFLite] Implemented EXPAND_DIMS Operator for TFLite. (#6243)
Chris Sullivan [Tue, 11 Aug 2020 07:47:01 +0000 (00:47 -0700)]
[RPC] Update build support for cross compiling apps/cpp_rpc with OpenCL (#6229)
* Standardize support for building and cross compiling apps/cpp_rpc.
* Add cmake coverage for building the C++ RPC server binary
and update documentation.
* Add support for linking against custom OpenCL SDK employing
a custom find_opencl macro. This can be useful when cross
compiling with a custom OpenCL device driver.
* Update OpenCL related documentation.
* Add embedded linux build instructions to apps/cpp_rpc/README.md and
ensure pthread is linked against when OS=Linux is defined. Remove
outdated apps/cpp_rpc/Makefile.
Tristan Konolige [Tue, 11 Aug 2020 02:16:41 +0000 (19:16 -0700)]
[Topi,x86] Split MKL from BLAS. (#6182)
Make cblas and mkl seperate entities in cmake and topi, allowing users
to use both a BLAS library and MKL. In the future, MKL specific
functions can be added easily. MKLDNN is also split off from MKL and
BLAS for the same reasons.
Other improvements:
- cblas and mkl strategies are now only applied when they are viable.
- compile_engine will log which implementation it has chosen and why.
cloud-mxd [Mon, 10 Aug 2020 21:53:15 +0000 (05:53 +0800)]
fix cuda half math function is undefined: hpow, htanh (#6225)
Tianming Xu [Mon, 10 Aug 2020 16:00:53 +0000 (00:00 +0800)]
[Relay]Refine tensorflow frontend 1.x & 2.x compatibility (#6240)
* [Relay]Refine tensorflow frontend 1.x & 2.x compatibility
* fix lint error
* revert gpu related changes
lhutton1 [Mon, 10 Aug 2020 15:56:09 +0000 (16:56 +0100)]
[BYOC][ACL] Improve installation tutorial (#6170)
* [BYOC][ACL] Improve installation tutorial
Improves installation script so that ACL can be built natively and improves tutorial to give clearer information on how ACL can be installed using two different methods.
Change-Id: I6cec98b4b0a7dc2b151b36583d3d28f2b85f8702
* Address comments
Change-Id: I88db6d9d539a8f06e2dfe1b9a0a3ac7a4b46cece
Wuwei Lin [Mon, 10 Aug 2020 15:37:09 +0000 (11:37 -0400)]
[TOPI, Cuda] Fix conv2d_transpose output padding (#6236)
Bohan Hou [Mon, 10 Aug 2020 15:25:01 +0000 (23:25 +0800)]
[TIR][Hybrid] Hybrid Script Support for TIR (#6227)
Rishabh Jain [Mon, 10 Aug 2020 12:21:20 +0000 (17:51 +0530)]
[TFLite] Implemented ONE_HOT Operator for TFLite (#6223)
Tianqi Chen [Mon, 10 Aug 2020 09:09:32 +0000 (02:09 -0700)]
[COMMUNITY] jcf94 -> Reviewer (#6241)
shiwenloong [Mon, 10 Aug 2020 06:07:43 +0000 (14:07 +0800)]
[Relay][Op] Add unbiased variance op and corresponding support in pytorch frontend (#6232)
windclarion [Sun, 9 Aug 2020 14:00:53 +0000 (22:00 +0800)]
[uTVM] fix crt building and running error (#6231)
Signed-off-by: windclarion <windclarion@gmail.com>
lhutton1 [Sun, 9 Aug 2020 01:27:03 +0000 (02:27 +0100)]
[BYOC][JSON] json_node.h should include data_type.h (#6224)
Fixes compilation issue after #6214.
Change-Id: I07e25356bbfe4a7bd0950f2672441ce1c338dc3f
Tristan Konolige [Sun, 9 Aug 2020 01:26:36 +0000 (18:26 -0700)]
[FIX] Verify that tensor reshape is valid. (#6215)
Matthew Brookhart [Sat, 8 Aug 2020 00:08:52 +0000 (17:08 -0700)]
[Relay][Dynamic] Add Dynamic Resize Op (#6198)
* WIP
* optionally remove output shape inference from topi
* fix resize
* add resize to dynamic_to_static pass
add resize to dynamic_to_static pass
* fix clang-format
* fix bad rebase
* add argument to dynamic resize doc string
* fix i386 test
* fix lint
cloud-mxd [Fri, 7 Aug 2020 11:38:11 +0000 (19:38 +0800)]
[runtime][cublas] fix typo (#6230)
wrongtest [Fri, 7 Aug 2020 07:29:37 +0000 (15:29 +0800)]
[Relay][Pass] Support combine multiple dense op just into dense (#6062)
* feat: Support combine multiple matmuls to flat matmul
* fix: Change to_batch -> to_batch_matmul and enrich docstring
* feat: Add wrapped batching ops pass for python
windclarion [Fri, 7 Aug 2020 04:23:39 +0000 (12:23 +0800)]
[C++ RPC] fix typo to keep same with source code (#6220)
Signed-off-by: windclarion <windclarion@gmail.com>
Dmitriy Smirnov [Fri, 7 Aug 2020 03:08:35 +0000 (04:08 +0100)]
Reshape with dynamic shape arg (#6208)
Reshape operation updated to take shape from second operand.
In case if shape is provided using second operand it
can be a tensor now.
Siju Samuel [Fri, 7 Aug 2020 00:57:20 +0000 (06:27 +0530)]
[ONNX]Mod operator, bug fix (#6160)
* Onnx mod, bug fix
* Added comment for the mod/floor_mod behaviour difference between numpy & relay
shiwenloong [Fri, 7 Aug 2020 00:55:46 +0000 (08:55 +0800)]
[PYTORCH]Std op without specified dimensions support (#6226)
Andrew Reusch [Thu, 6 Aug 2020 23:08:19 +0000 (16:08 -0700)]
[µTVM] Add --runtime=c, remove micro_dev target, enable LLVM backend (#6145)
* need to fill address of globals in tvmfuncregistry
* llvm func registry generator works!
* lint fixes
* rm hexdump include
* bring bundle_deploy back to life and add to CI
* revert gcda additions
* git-clang-format
* fix check for --system-lib and test_runtime_micro target
* fixup compile flags for bundle_deploy CRT and improve robustness
* git-clang-format
* add debugging info
* git-clang-format
* initialize ret_values in PackedFunc_Call.
* retrigger CI
* fix log messages
* git-clang-format
* remove default for --runtime target opt
* put backtrace behind a flag and enable it
* simpify ReadString(), fixing bad instruction exception on os x.
* git-clang-format
* uncomment tests
* reorder backtrace ldflags for linux gcc
Matthew Brookhart [Thu, 6 Aug 2020 15:46:58 +0000 (08:46 -0700)]
[Relay][Dynamic] OneHot operation (#6209)
* Dynamic OneHot Op
* refactor dynamic_to_static
* add onehot to dynamic_to_static pass
Lianmin Zheng [Thu, 6 Aug 2020 10:46:12 +0000 (03:46 -0700)]
[Ansor][AutoTVM v2.0] Phase 1: The base class for cost models (#6187)
* add the base class for cost models
* address comments
* Update tests/python/unittest/test_auto_scheduler_cost_model.py
Disable test if user doesn't have llvm
Co-authored-by: Zhao Wu <zhaowu@apache.org>
Zhi [Thu, 6 Aug 2020 03:36:01 +0000 (20:36 -0700)]
[DOCS] Update pass infra tutorial (#6193)
* [DOCS] Update pass infra tutorial
* update tutorial
Tianqi Chen [Thu, 6 Aug 2020 01:57:25 +0000 (18:57 -0700)]
[RUNTIME] Enable auto conversion String->DLDataType (#6214)
wjliu [Wed, 5 Aug 2020 20:02:36 +0000 (04:02 +0800)]
match pytorch 1.6 googlenet pretrained model (#6201) (#6212)
Tianming Xu [Wed, 5 Aug 2020 20:01:27 +0000 (04:01 +0800)]
[Relay] pytorch frontend support conv1d (#6203)
* [Relay] pytorch frontend support conv1d
* add tests for conv1d
Co-authored-by: xutianming.xtm <xutianming.xtm@bytedance.com>
Jamie Zhuang [Wed, 5 Aug 2020 17:04:24 +0000 (01:04 +0800)]
fix compilation error with cuda 11 (#6213)
Trevor Morris [Wed, 5 Aug 2020 17:04:08 +0000 (10:04 -0700)]
Pass mfloat-abi to LLVMModule::Init (#6150)
Fix lint
Thierry Moreau [Wed, 5 Aug 2020 15:15:31 +0000 (08:15 -0700)]
[Target] 64-bit RPi4b target (#6211)