46e9b3f | Dillon Sharlet | 18 November 2020, 07:26:21 UTC | Bring back broadcasting specialization. | 18 November 2020, 07:26:21 UTC |
7f5e139 | Dillon Sharlet | 18 November 2020, 07:26:11 UTC | Add padding to bias. | 18 November 2020, 07:26:11 UTC |
33cfdfd | Dillon Sharlet | 18 November 2020, 06:54:22 UTC | Fix compare_vs_tflite | 18 November 2020, 06:54:22 UTC |
8e782e1 | Dillon Sharlet | 18 November 2020, 01:52:47 UTC | Add --working_set option. | 18 November 2020, 01:52:47 UTC |
f286b71 | Dillon Sharlet | 18 November 2020, 01:39:37 UTC | Add operator/ to Interval | 18 November 2020, 01:39:37 UTC |
3385c59 | Dillon Sharlet | 18 November 2020, 01:24:21 UTC | CropShape -> Box. | 18 November 2020, 01:24:21 UTC |
c856a38 | Dillon Sharlet | 18 November 2020, 01:19:32 UTC | Merge branch 'interpret_nn' of https://github.com/halide/Halide into interpret_nn | 18 November 2020, 01:19:32 UTC |
bd9731b | Dillon Sharlet | 18 November 2020, 01:16:49 UTC | Add Interval helper to replace std::pair<int, int> | 18 November 2020, 01:17:16 UTC |
a66a10a | Steven Johnson | 18 November 2020, 00:49:46 UTC | Add UInt64 type support | 18 November 2020, 00:49:46 UTC |
cd633b7 | Steven Johnson | 17 November 2020, 23:54:24 UTC | Don't mess with subgraph name -- it's debug-only and sometimes bogus | 17 November 2020, 23:54:24 UTC |
81d2ba0 | Dillon Sharlet | 17 November 2020, 20:04:23 UTC | Merge branch 'interpret_nn' of https://github.com/halide/Halide into interpret_nn | 17 November 2020, 20:04:23 UTC |
2fba24e | Dillon Sharlet | 17 November 2020, 19:21:35 UTC | Sloppy bounds inference fixes. | 17 November 2020, 19:21:35 UTC |
fd7f3a7 | Dillon Sharlet | 17 November 2020, 19:21:15 UTC | Fuse adjacent ops. | 17 November 2020, 19:21:15 UTC |
5b1f43a | Steven Johnson | 17 November 2020, 18:41:06 UTC | Merge branch 'master' into interpret_nn | 17 November 2020, 18:41:06 UTC |
5137369 | Steven Johnson | 17 November 2020, 18:38:06 UTC | Update Android NDK support in apps/ (#5454) * Update Android NDK support in apps/ The Makefile help for apps/ assumed a fairly old version of the Android NDK (~2017). This updates to assume r19 or later: - No need to do `make-standalone-toolchain` anymore - Clang instead of GCC - assume static linking of libc++ is the right default I am limited in my ability to test on-device here (I don't have a device that will let me test HVX easily). apps/blur works fine onmy P2XL after this change, though. Also, drive-by fix to apps/simd_op_check to remove hvx_64 references. | 17 November 2020, 18:38:06 UTC |
bf94102 | Dillon Sharlet | 17 November 2020, 18:29:23 UTC | New scheduling algorithm kind of works (still disabled). | 17 November 2020, 18:29:23 UTC |
e2cfcae | Dillon Sharlet | 17 November 2020, 06:11:14 UTC | Add some helpers. | 17 November 2020, 06:11:14 UTC |
a295ba2 | Dillon Sharlet | 17 November 2020, 01:31:40 UTC | Remove redundant parameter. | 17 November 2020, 01:31:40 UTC |
f4053c2 | Steven Johnson | 17 November 2020, 00:00:42 UTC | Merge branch 'master' into interpret_nn | 17 November 2020, 00:00:42 UTC |
f60efd8 | Steven Johnson | 17 November 2020, 00:00:38 UTC | Add run_benchmark_on_device.sh | 17 November 2020, 00:00:38 UTC |
c0ca4ff | Steven Johnson | 16 November 2020, 20:34:33 UTC | Revert C++11 usage in hexagon_remote (#5446) * Revert C++11 usage in hexagon_remote Building hexagon_remote with C++11 ends up inserting some unwanted C++11-related symbols (__gxx_personality_v0) that aren't present. This reverts those changes, and modifies HalideRuntime.h so that most of the `__cplusplus` checks are now `__cplusplus >= 201103L` (i.e., C++ convenience features only exist when compiled under C++11 or later). * Appease MSVC idiocy | 16 November 2020, 20:34:33 UTC |
a592c45 | Steven Johnson | 16 November 2020, 18:00:46 UTC | Merge branch 'master' into interpret_nn | 16 November 2020, 18:00:46 UTC |
e3fc746 | Infinoid | 16 November 2020, 17:34:31 UTC | Fix typo in comment: jit_compile -> compile_jit (#5453) | 16 November 2020, 17:34:31 UTC |
e5ff1b6 | Dillon Sharlet | 16 November 2020, 17:33:32 UTC | Revert "Push lets near their uses (whenever possible) while CSEing += (#5387)" (#5448) This reverts commit d5e425ee29f165b9de3527a267837093f99e59be. | 16 November 2020, 17:33:32 UTC |
e090687 | Steven Johnson | 13 November 2020, 23:29:15 UTC | Update compare_vs_tflite.cpp | 13 November 2020, 23:29:15 UTC |
e586441 | Steven Johnson | 13 November 2020, 23:15:51 UTC | Fix AveragePool + MaxPool | 13 November 2020, 23:15:51 UTC |
233fd32 | Steven Johnson | 13 November 2020, 23:07:12 UTC | Fix AddOp | 13 November 2020, 23:07:12 UTC |
5375536 | Steven Johnson | 13 November 2020, 22:26:55 UTC | Update ops.cpp | 13 November 2020, 22:26:55 UTC |
ecf6e66 | Steven Johnson | 13 November 2020, 22:21:48 UTC | Clean up FillWithRandom | 13 November 2020, 22:21:48 UTC |
b75aef0 | Steven Johnson | 13 November 2020, 22:08:50 UTC | Update compare_vs_tflite.cpp | 13 November 2020, 22:08:50 UTC |
b212af2 | Dillon Sharlet | 13 November 2020, 02:39:17 UTC | Merge branch 'interpret_nn' of https://github.com/halide/Halide into interpret_nn | 13 November 2020, 02:39:17 UTC |
da7e6aa | Dillon Sharlet | 13 November 2020, 02:38:55 UTC | Interpreter now owns Model objects, so Tensor can be stateful. | 13 November 2020, 02:38:55 UTC |
bd8b276 | Steven Johnson | 13 November 2020, 02:18:07 UTC | Fix DepthwiseConv2D | 13 November 2020, 02:18:07 UTC |
f5e4332 | Steven Johnson | 13 November 2020, 00:28:10 UTC | Init stride in ParseTensor rather than Allocate() | 13 November 2020, 00:28:10 UTC |
caaa495 | Steven Johnson | 13 November 2020, 00:27:13 UTC | Fix minor bug in tflite_exploder | 13 November 2020, 00:27:13 UTC |
8ad70b3 | Dillon Sharlet | 12 November 2020, 23:32:05 UTC | Merge branch 'master' of https://github.com/halide/Halide into interpret_nn | 12 November 2020, 23:32:05 UTC |
fca1b44 | Pranav Bhandarkar | 12 November 2020, 23:24:18 UTC | update readme.md for hexagon (#5444) | 12 November 2020, 23:24:18 UTC |
37a1d13 | Steven Johnson | 12 November 2020, 02:01:03 UTC | Minor formatting | 12 November 2020, 02:01:03 UTC |
62bf0f2 | Steven Johnson | 11 November 2020, 23:14:21 UTC | Add --verbose | 11 November 2020, 23:14:21 UTC |
35da402 | Steven Johnson | 11 November 2020, 22:58:25 UTC | default --threads to 1 | 11 November 2020, 22:58:25 UTC |
4c6d1a7 | Steven Johnson | 11 November 2020, 22:58:05 UTC | formatting fixes | 11 November 2020, 22:58:05 UTC |
86ef56a | Steven Johnson | 11 November 2020, 22:42:02 UTC | Update compare_vs_tflite.cpp | 11 November 2020, 22:42:02 UTC |
d76bbd2 | Steven Johnson | 11 November 2020, 22:40:37 UTC | Various changes: - Only show a few diffs - limit range for int random - add `-threads`, set threads for tflite and halide | 11 November 2020, 22:40:37 UTC |
acdad1b | Steven Johnson | 11 November 2020, 22:10:59 UTC | Improve random-seed handling for inputs | 11 November 2020, 22:10:59 UTC |
cd41e7a | Steven Johnson | 11 November 2020, 22:03:53 UTC | Use halide_benchmark for timing | 11 November 2020, 22:03:53 UTC |
813d231 | Steven Johnson | 11 November 2020, 19:52:10 UTC | handle float16 | 11 November 2020, 19:52:10 UTC |
94c3304 | Steven Johnson | 11 November 2020, 19:51:06 UTC | Mark all targets .SECONDARY | 11 November 2020, 19:51:06 UTC |
846e971 | Steven Johnson | 11 November 2020, 19:26:19 UTC | logging tweaks in compare_vs_tflite | 11 November 2020, 19:26:19 UTC |
181c974 | Steven Johnson | 11 November 2020, 18:59:48 UTC | Update VectorizeLoops.cpp | 11 November 2020, 18:59:48 UTC |
921f3cc | Steven Johnson | 11 November 2020, 18:55:53 UTC | Merge branch 'master' into interpret_nn | 11 November 2020, 18:55:53 UTC |
c8ab278 | Alexander Root | 11 November 2020, 18:41:34 UTC | add conditions for one-sided bounds to LT/GT, LE/GE, EQ, NEQ (#5438) add conditions for one-sided bounds to LT/GT, LE/GE, EQ, NEQ | 11 November 2020, 18:41:34 UTC |
eac39c7 | Andrew Adams | 11 November 2020, 17:25:31 UTC | is_zero -> is_const_zero (#5436) is_zero -> is_const_zero | 11 November 2020, 17:25:31 UTC |
6a11b14 | Steven Johnson | 11 November 2020, 02:03:58 UTC | Add compare_vs_tflite | 11 November 2020, 02:03:58 UTC |
78a8b46 | Steven Johnson | 11 November 2020, 02:00:15 UTC | Add compare_vs_tflite | 11 November 2020, 02:00:15 UTC |
a21fc7c | Steven Johnson | 11 November 2020, 01:55:48 UTC | Make sure Tensor::Data<void>() sets type | 11 November 2020, 01:55:48 UTC |
0853b06 | Steven Johnson | 11 November 2020, 01:48:23 UTC | Update interpreter.cpp | 11 November 2020, 01:48:23 UTC |
8259941 | Steven Johnson | 11 November 2020, 01:45:53 UTC | Fix bonehead mistake | 11 November 2020, 01:45:53 UTC |
c9d635a | Steven Johnson | 11 November 2020, 01:29:50 UTC | Add ModelInterpreter::Inputs() | 11 November 2020, 01:29:50 UTC |
d21febf | Steven Johnson | 11 November 2020, 00:14:53 UTC | Allow IsType<void>() -> true | 11 November 2020, 00:14:53 UTC |
f373770 | Steven Johnson | 10 November 2020, 23:41:17 UTC | Add 'verbose' option to ScheduleOptions | 10 November 2020, 23:41:17 UTC |
f827283 | Steven Johnson | 10 November 2020, 23:02:20 UTC | Add ModelInterpreter::Outputs(), implement GetTensor() | 10 November 2020, 23:02:20 UTC |
364d1da | Steven Johnson | 10 November 2020, 22:19:48 UTC | Add copy/move ctors to all base classes Ensure that things like Tensor can't be accidentally copied | 10 November 2020, 22:19:48 UTC |
dd768c0 | Steven Johnson | 10 November 2020, 21:37:15 UTC | Merge branch 'master' into interpret_nn | 10 November 2020, 21:37:15 UTC |
d53b9ef | Volodymyr Kysenko | 10 November 2020, 18:11:14 UTC | Make simd_op_check.h more overridable (#5442) | 10 November 2020, 18:11:14 UTC |
f524111 | Steven Johnson | 05 November 2020, 19:55:10 UTC | FIx for trunk LLVM (#5435) | 05 November 2020, 19:55:10 UTC |
8b333bc | Andrew Adams | 05 November 2020, 17:10:44 UTC | is_zero is a compile-time check if it's the constant zero (#5433) I think for this code we want a runtime check if it's zero or not. | 05 November 2020, 17:10:44 UTC |
c45124f | John Laxson | 04 November 2020, 17:35:32 UTC | Use new flag for clang tidy behavior in cmake (#5428) * Use new flag for clang tidy | 04 November 2020, 17:35:32 UTC |
ece39b6 | Steven Johnson | 04 November 2020, 00:12:15 UTC | Upgrade PyBind11 version in CMake to 2.5 (#5427) v2.4.3 can generate a lot of compiler warnings under C++17; v2.5 fixes there. Note 1: I am unsure about the issues with keeping in sync with Ubuntu 20.04; tagging @alexreinking for comments Note 2: the current version of PyBind11 is actually v2.6, but it has many more changes and upgrading looks nontrivial; deliberately holding off on that upgrade for now. | 04 November 2020, 00:12:15 UTC |
cd3f1d8 | Steven Johnson | 03 November 2020, 01:31:02 UTC | Fix various clang-tidy issues (#5426) * Fix various clang-tidy issues For some reason, these are only getting flagged under C++17 builds, but they are legit (minor) issues we want to fix. | 03 November 2020, 01:31:02 UTC |
69643ce | Steven Johnson | 02 November 2020, 23:40:01 UTC | Fix for trunk LLVM (#5425) | 02 November 2020, 23:40:01 UTC |
2c488d7 | Steven Johnson | 02 November 2020, 19:04:43 UTC | tfexploder: append the builtin op name to the output file also, drive-by removal of unused var in tflite_parser | 02 November 2020, 19:04:43 UTC |
883bab8 | Steven Johnson | 02 November 2020, 18:25:47 UTC | Gather deps for interpreter into a single var | 02 November 2020, 18:25:47 UTC |
3381612 | Steven Johnson | 02 November 2020, 18:08:33 UTC | Add a from-buffer call to tfliteparser (avoid need for callers to know tflite internals) | 02 November 2020, 18:08:33 UTC |
61222a1 | Steven Johnson | 02 November 2020, 17:55:09 UTC | Disable CMake builds files for interpret_nn | 02 November 2020, 17:55:09 UTC |
982a851 | Steven Johnson | 02 November 2020, 17:24:25 UTC | Merge branch 'master' into interpret_nn | 02 November 2020, 17:24:25 UTC |
025f054 | Andrew Adams | 30 October 2020, 17:12:05 UTC | Remove superfluous boundary condition in resize (#5414) * Remove superfluous boundary condition in resize and tweak schedule. ~10-15% faster | 30 October 2020, 17:12:05 UTC |
6994a15 | Alex Reinking | 30 October 2020, 16:20:38 UTC | fix GCC -> GNU in generator expressions (#5419) | 30 October 2020, 16:20:38 UTC |
acb818b | Steven Johnson | 30 October 2020, 16:18:39 UTC | Add missing operator^ overloads in CppVector (Issue #5415) (#5416) | 30 October 2020, 16:18:39 UTC |
91b88b5 | Steven Johnson | 30 October 2020, 16:18:09 UTC | Don't declare round/roundf for multi-threaded MSVC builds (Issue #5403) (#5417) | 30 October 2020, 16:18:09 UTC |
feb81a2 | Andrew Adams | 28 October 2020, 21:08:39 UTC | doxygen wasn't finding the runtime (#5410) | 28 October 2020, 21:08:39 UTC |
3fd654f | Alexander Root | 28 October 2020, 21:07:57 UTC | loosen preconditions on div by single point in Bounds.cpp (#5407) Loosen preconditions on div by single point for integers | 28 October 2020, 21:07:57 UTC |
d5e425e | Pranav Bhandarkar | 28 October 2020, 20:19:40 UTC | Push lets near their uses (whenever possible) while CSEing += (#5387) * Push lets near their uses (whenever possible) while CSEing += The CSE pass tries to do CSE jointly on the index and value of store nodes. This is to stop: f[x] = f[x] + y from turning into f[x] = f[z] + y This is because the two 'x' indices are not CSE'd together. However, one problem with jointly CSEing the store index and vaues is that after CSEing, the pass puts the lets (the values that were CSE'd) before the new store. That is we get, let(t0...) let(t1...) f[t0] = f[t0] + function_of(t1) Suppose however, there was nothing to CSE between the store index and value, that is the index was unchanged after CSE. In that case, moving lets before the store puts the lets too far away from their uses. This is ok except, there are passes like LoopCarry that are beneficial when they are able to see a long continuous block of stores (eg. when unrolling). But now, they'll see a long sequence of LetStmts. Instead, if the index was unchanged after CSE, we should build up the stores as f[x] = let(t0.. in (value)); This way LoopCarry is given a chance to see a series of stores. Handling this in CSE, means the LoopCarry pass need not be complicated. Change-Id: Iae19e1f69a6b38f3224a64b0c4781533e3862970 * In CSE, when we bundle together the store index and store value, create LetStmts only for CSE'd values that are needed by the store index. The rest can be Let expressions around the store value. * Formatting fix for printing the IR after CSE * Be smarter about pushing lets near their uses when CSEing += In a previous patch, in the code that handles CSEing += store operations, we weren't general enough; we only handled the specific case when the store index remained unchanged when CSE'd together with the store value. This patch is more general. Even if the store index changes, only the use-def chains created from the values used by the new store index that end in defs created by CSE are retained as Let stmts around the new store. Others go as Let expressions around the store value. * Fix some formatting issues exposed by clang-format and remove the inclusion of ExprUsesVar.h in CSE.cpp because it is not used anymore. * Use override in GetVarsUsed in CSE.cpp | 28 October 2020, 20:19:40 UTC |
7896513 | Steven Johnson | 27 October 2020, 19:03:29 UTC | Update IntrusivePtr.h | 28 October 2020, 00:38:57 UTC |
6e0b499 | Steven Johnson | 27 October 2020, 17:47:46 UTC | Update IntrusivePtr.h | 28 October 2020, 00:38:57 UTC |
e96a0e9 | Steven Johnson | 27 October 2020, 17:05:11 UTC | Update IntrusivePtr.h | 28 October 2020, 00:38:57 UTC |
116a3f0 | Steven Johnson | 27 October 2020, 00:52:54 UTC | More clang-tidy cleanup | 28 October 2020, 00:38:57 UTC |
864955e | Andrew Adams | 26 October 2020, 23:23:46 UTC | web assembly threads + demo app (#5395) Add webassembly demo app and enable webassembly in the makefile. | 26 October 2020, 23:23:46 UTC |
deb10c6 | Steven Johnson | 23 October 2020, 17:32:18 UTC | Add -fno-threadsafe-statics | 26 October 2020, 17:12:50 UTC |
f853c89 | Steven Johnson | 22 October 2020, 17:19:17 UTC | Upgrade hexagon_remote/Makefile to use C++11 HalideRuntime.h now requires at least C++11 (for C++ files), so ensure that we pass `-std=c++11` for all those when building the remote. | 26 October 2020, 17:12:50 UTC |
9ea017c | Shihpo Hung | 22 October 2020, 13:45:21 UTC | Fix transitive dependencies | 26 October 2020, 16:47:38 UTC |
a0b5984 | Steven Johnson | 24 October 2020, 00:40:07 UTC | Refactor various things into app_util.h | 24 October 2020, 00:40:07 UTC |
be59cc4 | Dillon Sharlet | 23 October 2020, 20:58:06 UTC | Split interpret_nn.h/cpp to model.h/cpp and interpreter.h/cpp. | 23 October 2020, 20:58:06 UTC |
7142fa7 | Mark Glines | 22 October 2020, 16:34:13 UTC | Add Stage.gpu_lanes to Python bindings. | 23 October 2020, 17:19:50 UTC |
fef108b | Steven Johnson | 23 October 2020, 16:56:28 UTC | Upgrade WABT version to 1.0.19 | 23 October 2020, 16:56:44 UTC |
33e67ba | Steven Johnson | 23 October 2020, 00:19:46 UTC | Add tflite_exploder | 23 October 2020, 00:19:46 UTC |
2d1aee9 | Zalman Stern | 22 October 2020, 20:39:39 UTC | Add a test case for multiple argument memoize_tag to demonstrate usage. (#5393) * Add a test case for multiple argument memoize_tag usage to demonstrate how it works. * Fix formatting typo. | 22 October 2020, 20:39:39 UTC |
a86b66e | Steven Johnson | 22 October 2020, 20:27:58 UTC | Merge branch 'master' into interpret_nn | 22 October 2020, 20:27:58 UTC |
475c7a0 | Dillon Sharlet | 21 October 2020, 21:52:17 UTC | Use locally declared type. | 22 October 2020, 16:35:54 UTC |
4f072bc | Dillon Sharlet | 21 October 2020, 21:34:49 UTC | Fix bounds resulting in vector types. | 22 October 2020, 16:35:54 UTC |
2da26cf | Dillon Sharlet | 22 October 2020, 04:46:26 UTC | Merge branch 'interpret_nn' of https://github.com/halide/Halide into interpret_nn | 22 October 2020, 04:46:26 UTC |