- 10 Feb, 2020 3 commits
-
-
* [Relay] Added MergeComposite pass This pass allows for patterns to be wrapped in a function marked with 'Composite' and a composite function name. This is intended to be used with the external codegen for the cases where an external operator maps to multiple Relay operators. In that case, the mapping can be expressed as a pattern and assigned a name. For more information on this pass and its motivation, see the RFC: https://discuss.tvm.ai/t/rfc-external-codegen-defining-composite-relay-operators/5470 Change-Id: Icb1b803a9f0ac57c529143200228f3bb5793afc0 * [Relay] Merge composite tests Added tests for the merge_composite pass. Change-Id: I1728b4a05b0c1c36140a40f1afe028fde62185dd * Merge composite additional test Change-Id: I9bc7d6053c575e9468ac5abc31214c6ad8507e46 * Support priority order in merge_composite The order in which the patterns are matched was currently random as an unordered_map was used to store the pattern table. This uses arrays instead so that a distinct priority order of matching can be defined. Additional tests have also been added to verify this behaviour. Change-Id: Ief347df4262639138d5d9d7c8cee7ef233af7b56 * Improved merge composite docs Change-Id: Ie3a72045ecc3f13ad3c302fbdf192b7296a306a8 * Removed unused variable Change-Id: I7814d5fde368ffaf1b3d6d806060c774c7720364 * Remove unnecessary op check Change-Id: I38e78d2acd5b86cb8e837be72ff9d72cd10bcf33 * Improve styling on composite function creation Change-Id: I37add1c3134e0b5d5085fe1eb9daf8e06890fa8c * Comment reword Change-Id: Ie05872dcbbe0c3e1190b0597083b9a64e6b66c66 * Stylistic changes to avoid std::move Change-Id: I43a93995bbf10530399900c992aa99dd4ae4575f * Relax a check in ExtractPattern Change-Id: I0faef77a66c55f83f09e6e47c561ffaea63dedfa * Remove new line Change-Id: Ifdd02c12087a7e1a0a9b54825669bc0de8f13c3d * Removed MatchPattern from MergeComposite This is not necessary now that ExtractPattern can fulfill the same purpose. Change-Id: I14dc020afa8e50f2df4c0a2efb88a011987f8196 * Removed a new line Change-Id: I8b50f0c9069aa1bcaccbe68eb421031f01a64842 * Improved docs for merge composite Change-Id: Ib1959a35c856e7ea5639de2e4ef314a54f44caf5 * Fixed free vars in test Change-Id: I2b7f273db275964ec0e9820560663f0808adee79 * Handle case where root arg might not be a call Change-Id: I4eeea3ce723d3ba337d110dcc690377daebe8626 * Removed blank line Change-Id: I07f5392c0e95cfe3cfa5c333703cc6f82d6034fb * Change to CHECK_EQ Change-Id: I5c5d62d3cd57f72508b30b926f72091ae6f0d1cc * Revised a conditional Change-Id: I23a7897ca15a7cd076db5039dc653a4b8c27e803 * Improved doc styling Change-Id: I377f0a1c1ac70f3b8d7584b0c49bddc8c6c134ef * Fail extraction if vars conflict Change-Id: I78e36d805e8ed6b55e61d490212a967c857554a4 * Added further merge composite tests Change-Id: Ib1d800409fca4c1834c7fe0cab5a26ab99a26820 Co-authored-by: lhutton1 <35535092+lhutton1@users.noreply.github.com>
mbarrett97 committed -
Fixed bug in ExprOp that caused bitwise operators to fail when a basic python type was on the left hand side of the expression. Added regression test for crashing cases. (#4852)
pankratz committed -
Wang Yucheng committed
-
- 09 Feb, 2020 3 commits
-
-
Tianqi Chen committed
-
Tianqi Chen committed
-
Tianqi Chen committed
-
- 08 Feb, 2020 2 commits
-
-
Tianqi Chen committed
-
* Fixed process termination routine in windows addresses and Fixes AttributeError: module 'os' has no attribute 'killpg' error in #4821 * Update server.py
Seyyed Hossein Hasanpour committed
-
- 07 Feb, 2020 10 commits
-
-
Cody Yu committed
-
ziheng committed
-
* [REFACTOR][PY-API] Polish tvm.runtime, tvm.runtime.module API update This PR updates the tvm.runtime to use the new FFI style. - Remove top-level tvm.module to avoid confusion between runtime.Module and IRModule - API changes wrt to runtime.Module - tvm.module.load -> tvm.runtime.load_module - tvm.module.enabled -> tvm.runtime.enabled - tvm.module.system_lib -> tvm.runtime.system_lib - Remove dep on api_internal from runtime. * Update module.load in the latest API
Tianqi Chen committed -
Wang Yucheng committed
-
* [Relay][Frontend][TFlite] Add support for quantized LOGISTIC * add qnn implementation * add qnn test case for qnn logistic * Helper functions for quantize and dequantize.
Ina Dobreva committed -
Animesh Jain committed
-
Tianqi Chen committed
-
* Initial version working and passing tests. * WIP on supporting other activations. * add support for multiple activation functions in lstm * All tests working and code cleaned up. * Undo import swap to avoid conflict with masahi. * Added new tests and related bug fixes. Co-authored-by: Matthew Brookhart <mbrookhart@octoml.ai>
Josh Fromm committed -
Zhao Wu committed
-
Zhi committed
-
- 06 Feb, 2020 5 commits
-
-
Tianqi Chen committed
-
Tianqi Chen committed
-
Just do it committed
-
* Add bitwise ops to topi * Add the bitwise ops to relay.
abergeron committed -
* [CONTRIB][CC] Enhance cc.cross_compiler - Enhance cc.cross_compiler to take str argument. - Remove cc.build_create_shared_func as it is dupilicated with cross_compiler - Add examples to cc.cross_compiler * address review comments
Tianqi Chen committed
-
- 05 Feb, 2020 9 commits
-
-
* enforce 4-way padding * add util with get_pad_tuple * delete unnecessary arguments * fix lint * add container.Array case * fix cudnn conv2d asymmetric padding logic * rename get_pad_tuple to get_pad_tuple2d * revert change for topi/python/topi/nn/conv2d.py * add get_pad_tuple2d for several contrib conv2d ops * add get_pad_tuple2d for all conv2d ops
Xingyu Zhou committed -
* [Relay][Frontend][TFLite] Add parser support for logical operators * Add parser support for logical_and, logical_or * Add boolean dtype as a valid tensor type * BOOLEAN dtype is supported only from tf 1.15 so logical ops work only in that and newer versions * Logical_not is ommited since tflite can't convert it --> throws errors for addv2 * Add TFLite vesion check in tests for logical ops * Check is added because of boolean dtype lack of support
Ina Dobreva committed -
* [QNN] Optimize lowering for requantize and FixedPointMultiply. * Add check for requantize scale gt 1. * Added test case.
Animesh Jain committed -
* [TFLite] Dynamically calculate input_stats of any fake_quant range * pass the input range to the convertor and caclulate (mean, scale) there * change the range of the second tensor in elemwise operations so that we test inputs with different quant params * change the possible output range for elemwise ops wrt the updated ranges * update the comments for (m, s) calculations * add input range dict to reduce_mean op * Apply requested changes * add exception handling for zero division in input_stats * fix range of the input tensor in elemwsie
Ina Dobreva committed -
* fixed subprocess creation under windows this addresses the issue #4819 * Update server.py
Seyyed Hossein Hasanpour committed -
* [REFACTOR][PY] Establish tvm.runtime This PR establishes the tvm.runtime namespace that contains the core runtime data structures. The top-level API are kept inact for now via re-exporting. We will followup later to cleanup some of the top-level APIs. * Fix ndarray name
Tianqi Chen committed -
* - Additional util methods needed for mxnet frontend for qnn dialect. * - Fixing call to quantize. * [QNN] MxNet-MKLDNN parser support for QNN * [QNN] Relax conv check. * - Merge from origin * [QNN] Channel wise changes * [QNN] Dense changes * Dense fix for QNN ops. * - Removed non-mkl code from utils. - Small refactoring - Remove "with_sum" from conv - Simplified code * - Fixing ring buffer name. * - Fixing pylint issues. * - Fixing lint - Removing redundant commented code. * - Adding test cases - Removing unused methods. * [WIP] end to end test case for mxnet qnn parser * Changes to parse large CV models. * Pylint issues. * Fix Conv2D with sum and quantized pooling. * Reverting the changes made for mxnet-mkldnn test cases. Because of #4753, mxnet could not be updated to mxnet-mkldnn. Co-authored-by: Animesh Jain <anijain@umich.edu>
shoubhik committed -
Haichen Shen committed
-
* [REFACTOR][PY] tvm._ffi - Remove from __future__ import absolute_import in the related files as they are no longer needed if the code only runs in python3 - Remove reverse dependency of _ctypes _cython to object_generic. - function.py -> packed_func.py - Function -> PackedFunc - all registry related logics goes to tvm._ffi.registry - Use absolute references for FFI related calls. - tvm._ffi.register_object - tvm._ffi.register_func - tvm._ffi.get_global_func * Move get global func to the ffi side
Tianqi Chen committed
-
- 04 Feb, 2020 5 commits
-
-
* [TOPI][x86] Injective Schedule Improvement. * Add tiling. * Vectorize when there is an axis.
Animesh Jain committed -
Haichen Shen committed
-
* [AutoTVM] Minor bug fixes in AutoTVM for QNN graphs. * Bring back strided_slice. * Replace tvm.nd change.
Animesh Jain committed -
Tianqi Chen committed
-
* [LINT] Fix -Wextra * Fix virtual-dtor
Tianqi Chen committed
-
- 03 Feb, 2020 3 commits
-
-
* [TOPI] upsample operator 'NCHWinic' format support. some hardware accelerator ask packed format data like NCHWinic to fit the hardware resource, here add upsample NCHWinic format support to help such requirement. * address review comments, add assert for 'else must be NCHWxc' logic.
Hua Jiang committed -
This is motivated by the want to send an array of strings across the python/C++ boundary. Arrays only support ObjectRef types and so can't carry StringImmNodes. This creates a string reference type, StringImm, which can be used with tvm::Arrays. Change-Id: I598a44536c156b97dbfe3e9518e0a1f705da850c
mbarrett97 committed -
Zhao Wu committed
-