Граф коммитов

230 Коммитов

Автор SHA1 Сообщение Дата
acmore 21fa4cabb8 Fix build break on Windows. (#1179) 2018-05-25 09:17:30 -07:00
webberg b1c690bda6 #1159 bug fixed (#1164)
* #1159 bug fixed

* #1159 #1164 fixed
2018-05-18 16:05:27 -07:00
Tianqi Chen f48befc6ec [PASS] Revert the change of intel gpu warp index (#1127) 2018-04-20 21:18:40 -07:00
Yida Wang c7e7e7f5e6 add two more device properties (#1124) 2018-04-20 20:39:31 -07:00
libing4752 202570e4d6 enhance cache write to support multiple tensors generated by ONE computeOp (#1042) 2018-04-20 09:00:20 -07:00
Tianqi Chen 154104b32c [PASS] Remap thread axis. (#1122) 2018-04-19 11:36:06 -07:00
Tianqi Chen d9bab380d2 [IR] Change pragma convention, enable pass unroll option via pragma (#1112)
* [IR] Change pragma scope convention, enable pass unroll option via pragma

* add coverage test

* add explicit unroll as option
2018-04-15 21:12:55 -07:00
nhynes 6f2ef9dca0 Add SGXModule (#1019) 2018-04-09 22:24:19 -07:00
Lianmin Zheng 3121441d39 add device name to context attribute (#1090)
* add device name to context attribute

* update for other backends
2018-04-09 10:15:28 -07:00
Tianqi Chen 9082a93b51 Make target and build module more pythonic (#1089) 2018-04-07 21:12:49 -07:00
Leyuan Wang d949c742b6 Intel target added, sub group sync added (#1084) 2018-04-06 20:48:43 -07:00
Lianmin Zheng 2e17e85005 add query for shared memory size (#1083) 2018-04-06 10:11:47 -07:00
alex-weaver aaf7ff04e3 Move BuildConfig context stack to C++ (#1025) 2018-04-01 10:42:54 -07:00
eqy b205db35e7 preserve input option order (#1068) 2018-03-31 10:18:11 -07:00
Lianmin Zheng cfdc5119f3 delete init part when keeping trivial loop (#1031) 2018-03-28 14:30:07 -07:00
Tianqi Chen e15aae2b3e [SCHEDULE][PASS] Enable Warp memory and lower to shuffle (#1050)
* [SCHEDULE][PASS] Enable Warp memory and lower to shuffle

* OpenCL dispatches for now to intel shuffle
2018-03-26 10:43:40 -04:00
cjjia 246223153b Fix the issue #1033 (#1037)
* Fix the issue #1033

fix the issue #1033 "converting to ‘const std::unordered_set<std::basic_string<char> >’from initializer"

* Fix the issue #1033

fix the issue #1033 "converting to ‘const std::unordered_set<std::basic_string >’from initializer".
2018-03-23 01:59:30 -07:00
alex-weaver 6292204e94 Implement C++ registry to back Python target.generic_func (#892) 2018-03-19 00:17:25 -07:00
Salem Derisavi 893a2ae762 file include/tvm/logging.h from AutoTensorize work (#1015) 2018-03-16 18:09:38 -07:00
nhynes bfceafc7b4 Pluggable Thread Launching Mechanism (#991) 2018-03-15 19:06:46 -07:00
Ding 34e31c4439 [PASS] Add VerifyMemory pass and test cases (#410) (#993) 2018-03-13 08:52:21 -07:00
Tianqi Chen df1b4f6461 [IOS] Improve the iOS RPC with exclusive filesys lock (#981) 2018-03-09 11:12:57 -08:00
libing4752 38274115a9 enhance access_ptr that args can support Expr (#970) 2018-03-07 20:04:21 -08:00
Chris Nuernberger b1ffac4434 [RUNTIME] Stream API (#953) 2018-03-02 11:59:22 -08:00
Yige Hu ca8e31ff18 Fixed a g++ explicit constructor compatibility error for unordered_set. (#935)
* Fixed a g++ explicit constructor compatibility error for unordered_set.

* Change std::unordered_set<std::basic_string<char>>() to
std::unordered_set<std::string>().
2018-02-27 15:14:58 -08:00
nhynes f4b063e927 TVM SGX (#919)
* Update DMLC core most recent version

* Modify runtime to minimize io when building for SGX

* Add SGX example app

* Prefer streaming versions of packed_func function
2018-02-27 11:36:57 -08:00
Tianqi Chen d99bcaf156 [EXT] Allow easy extraction of extern module (#926) 2018-02-23 10:24:17 -08:00
Tianqi Chen 433756b9fd Revert "[RUNTIME] Refactor extension type handling, now it is header only (#924)" (#925)
This reverts commit 12d15704d7f5d30cff7540f1fd16be64c6baca68.
2018-02-22 20:18:08 -08:00
Tianqi Chen a6b4a219e2 [RUNTIME] Refactor extension type handling, now it is header only (#924)
* [RUNTIME] Refactor extension type handling, now it is header only
2018-02-22 18:26:32 -08:00
libing4752 61cdf903dd [SCHEDULE] Add factor_axis to rfactor (#895) 2018-02-22 09:28:23 -08:00
alex-weaver 523b6a6bec Convert BuildModule to use TVM node system (#879)
* Make python BuildConfig serializable/deserializable to/from string

* Make C++ BuildConfig serializable/deserializable to/from string

* Revert "Make python BuildConfig serializable/deserializable to/from string"

This reverts commit a5e1fb3ff63a161cc0d63475d2a32816cc4c3666.

* Revert "Make C++ BuildConfig serializable/deserializable to/from string"

This reverts commit ec0c2c54543050fe6f264d06eebff33dee70370b.

* Converted BuildConfig to use TVM node system

* Fix lint

* Fix lint

* Added code to set node attributes through the C API

* Fixed bug in build_config()

* Fix lint

* Fix lint

* Fix test errors

* Reduced scope of node __setattr__ to apply only to BuildConfig

* Fix lint

* Fix lint

* Changed python BuildConfig to be immutable, with values set once on construction.

* Fix lint

* Fix C++ test

* Fixed BuildConfig setting python-side args

* Fix lint

* Removed dependency on reflection.cc to construct BuildConfig (allow use in runtime library)

* Fix lint

* Revert "Fix lint"

This reverts commit 16ed6d7a1ca5e551b035bad46e8361ea487cd45b.

* Revert "Removed dependency on reflection.cc to construct BuildConfig (allow use in runtime library)"

This reverts commit 43817c97a2ee045791e0c031d962fa97636ce8f6.

* Avoid accessing BuildConfig when using runtime lib

* Fix missing import

* Fix error running under cython (root cause: node handle is not valid until after __init__ has returned, so cannot call __dir__ during __init__

* Fix error where BuildConfig._node_defaults was not copied in build_config()

* Fix lint

* Fix lint

* Fix lint

* Fix lint

* Add comments to python BuildConfig
2018-02-10 12:39:34 -08:00
Zhixun Tan 0a410a39dc [WIP] Add OpenGL topi. (#836)
[TOPI][GL] OpenGL topi.
2018-02-07 12:57:00 -08:00
Lianmin Zheng d56c777af8 support to keep trivial loops with extent of 1 (#877) 2018-02-06 09:23:19 -08:00
Tianqi Chen 79d503fd3b [BACKEND] Vulkan Runtime and SPIRV Codegen (#861)
* [BACKEND] Vulkan Runtime and SPIRV Codegen

* fix doc
2018-02-01 22:24:57 -08:00
alex-weaver f280f23a3d Porting schedules (except convolutions) to C++ (#763)
* Ported injective schedules to C++. Added some elementwise ops.

* Fix lint errors

* Added reduction ops and schedules

* Fix lint errors

* Fix lint errors

* Fix lint errors

* Added transform ops

* Fix lint errors

* Fix lint errors

* Added softmax, log_softmax, leaky_relu and flatten ops.
Fixed issue where TVM_DECLARE_INTRIN_UNARY used the PureExtern flag
instead of PureIntrinsic.
Added softmax CUDA schedule.

* Fix lint

* Fix lint

* Added binary_dense, batch_norm_inference, dense, dilate, scale_shift_*,
global_pool and pool ops.
Extended pad to allow specifying pad_value.
Fixed issue where pad would throw if padding was zero in all dimensions.

* Fix lint

* Fix lint

* Added CUDA schedules for dense, pool and global_pool

* Added extern schedules for generic and CUDA

* Fix lint

* Added x86 binary schedules

* Fix lint

* Added rocm dense schedule. Added rocBLAS and cuBLAS support to dense ops

* Added pow ops. Added x86 default and injective schedules

* Fix lint

* Fix lint

* Fix lint

* Fix lint

* Fix lint

* Fix indent

* Removed schedules directory

* Changed left_shift, right_shift to operators. Changed pad_value in pad() to remove pointer usage

* Fixed usage of pad in nn/pooling.h. Fixed declaration of operator>>

* Fixed comments for shift operators

* Added comments to utility functions

* Added TOPI C++ library, exporting broadcast_add op

* Fix lint

* Share libinfo.py with TVM

* Fix lint

* Add other broadcast ops

* Fix lint

* Fix imports in topi

* Fix lib names

* Fixed build issue where windows builds don't apply correct definitions

* Removed TVM_EXPORTS from topi library

* Attempted CI build fix

* Add topi lib to tvm_multilib

* Fix Jenkinsfile

* Added TOPI build target to Makefile

* Fix nn op namespaces.

* Fix lint

* Renamed TOPI lib to libtvm_topi

* Removed _ffi/base.py

* Remove _ffi from topi, now shared with tvm.

* Make libtvm_topi loading optional

* Fix compiler warnings

* Fix lint

* Fix lint

* Fix lint

* Fix build error by making new libs argument to Target optional

* Added C++ Target type interop. Added registration of remaining C++ ops and schedules. Added test of broadcast ops

* Fix lint

* Fix lint

* Fix compile error

* Fix compiler warnings

* Fix compiler warnings

* Fixed int vector interop. Fixed argmin incorrectly invoking argmax. Fixed corner case in default schedules of attempting to fuse 0 length axes. Added tests for reduce ops.

* Refactored reduce builders

* Fixed typos in topi.cc. Added basic test.

* Fixed padding size error. Added dense, dilate, pooling tests

* Fixed issue where clip would output a different dtype to the input. Added split_sections op to cover the other mode of the python split op. Added tests.

* Changed extension type numbers to avoid clash with NNVM

* Fix lint

* Fix compiler warnings

* Removed use of std::vector from the public TOPI API

* Fix lint

* Add TOPI C++ tests to CI

* Fixed detail namespacing. Improved comments.
2018-01-27 21:57:13 -08:00
Zhixun Tan 944de73b4b Add type code and bits to AllocWorkspace. (#831) 2018-01-27 21:50:52 -08:00
kun-zh 293dac397b support using pointer with an original offset (#826)
* when there is no intrin func, using body for initialization. For issue 714.

* Refine code per review comments, and add a test case.

* Fix lint issues.

* Re-organize the tensorize test cases, and add a new case for none-reset
mode.

* Fix a typo.

* Delete the unit case because merged it into test_schedule_tensorize.py already.

* always use new tensor in its stage when rewrite for cache read

* revert previous changes to sync up with master

* support using the ptr with an original offset

* update test case and fix CI error
2018-01-27 09:10:42 -08:00
Zhixun Tan 589831df65 [WIP] WebGL Backend (#672)
Basic WebGL Backend
2018-01-20 13:51:34 -08:00
Jammy Zhou ebf4e5a32c Additional mali target support (#794)
* Add Mali target support to tvm.target.create

* Add Mali target support in codegen
2018-01-19 09:40:05 -08:00
Tianqi Chen 2ff7431775 [PASS] StorageRewrite Fold Inplace op storage when possible (#759)
* [PASS] StorageRewrite Fold Inplace op storage when possible

* update comment to fix typos
2018-01-07 16:46:01 -08:00
xqdan 5f1816dbdd enable partition const loop with build flag (#732)
* [SCHEDULE]enable partition const loop with build flag (#719)

    * enable partition loop with build flag

    * add a testcase, and modify LoopPartition related cases

*     * add document for split_const_loop
2017-12-29 16:56:27 +08:00
Tianqi Chen 89b8456eff [CODEGEN] enable static handle cache (#723) 2017-12-24 18:06:01 +08:00
Andrew Adams bb97938df8 Halide -> HalideIR (#698) 2017-12-18 07:52:48 +08:00
alex-weaver 17e7e3d50a Port build_module.py to C++ (#667)
* Port build_module.py to C++

* Fix lint errors

* Fix more lint errors

* Fix more lint errors

* Fix more lint errors

* Fix build error

* Implemented style fixes

* Fix lint errors

* Added function to construct target from string
lower now returns array

* Fix lint error

* Implemented review changes - style & Target options -> std::vector

* Fixed lint, argument alignment and added unit test

* Changed test to target LLVM, fixed sign compare warnings

* Reverted unit test to CUDA, changed Jenkinsfile to enable GPU for C++ tests

* Slight change to Jenkinsfile

* Changed build_module test from CUDA to LLVM

* Added function var() to construct a Var instance.
Changed implementation of LLVMEnabled()

* Reverted Jenkinsfile
2017-12-05 12:06:46 -08:00
Tianqi Chen f2b913925d Support rank-0 tensor (#687)
* Support rank-0 tensor

* fix lint
2017-12-03 22:38:28 -08:00
solin319 e1b2c02f00 fix parameter name in UnrollLoop (#679)
In unroll_loop.cc the parameter name is "auto_max_depth", but in ir_pass.h the parameter name is "auto_min_depth"
2017-11-30 09:37:11 -08:00
Tianqi Chen 2bb1d8e458 [ARITH] Upgrade CanonicalSimplify to Simplify Mod (#676) 2017-11-28 13:26:17 -08:00
Tianqi Chen 9c0da90fb1 [PASS/SETUP] Fix minior issues (#663)
* [PASS/SETUP] Fix minior issues

* fix lint
2017-11-21 11:11:41 -08:00
Tianqi Chen a2aa154cfe [UNROLL] New unroll option (#647) 2017-11-14 15:01:15 -08:00
eqy cedd390062 Support vector operations for AMD (llvm IR) (#623)
* Support vector operations for AMD (llvm IR)

* fix whitespace

* update comments, docstring
2017-11-08 15:47:07 -08:00