Skip to content

Releases: taichi-dev/taichi

v0.7.28

03 Aug 06:02
9e04b1b

Choose a tag to compare

Full changelog:

  • [Doc] Add docstring for AutoDiff part (#2630) (by ljcc0930)
  • [vulkan] Move SPIR-V type capabilities into VulkanCapabilities & fix compilation errors (#2628) (by Yu Chang)
  • [vulkan] Use native struct types when supported & fix performance (#2621) (by Bob Cao)
  • [vulkan] Dynamically load Vulkan (#2623) (by Dunfan Lu)
  • [vulkan] Fix vulkan rand (#2622) (by Dunfan Lu)
  • [benchmark] Add query_kernel_profiler_() and benchmark/misc for performance monitoring (#2601) (by rocket)
  • [vulkan] Detect Vulkan / SPIR-V version & enabling required features (#2615) (by Bob Cao)
  • [vulkan] Add SPIRV-Headers as a submodule (#2608) (by Ye Kuang)
  • [ci] Prevent clang OOM (#2620) (by Ye Kuang)
  • [IR] Init GlobalTensorElementExpression and PtrOffsetStmt (#2543) (by squarefk)
  • [Lang] [refactor] Move SNode property calculation from materialization time to construction time (#2600) (by Yi Xu)
  • [Doc] Add python docstring in misc/util.py (#2599) (by rocket)
  • [Doc] Fix typo of PR #2586 (#2613) (by ljcc0930)
  • [vulkan] Draft: Remove shaderc on Windows & Add spirv-tools's optimization (#2605) (by Bob Cao)
  • [Lang] Support to destroy a SnodeTree and manage the memory (#2583) (by ljss)
  • [Refactor] Split transformer.py into StmtBuilder and ExprBuilder (Stage 1) (#2495) (by xumingkuan)
  • [Doc] Add Python docstring for some operators (#2586) (by ljss)
  • [Doc] Doc string for common_ops.py (#2611) (by ljcc0930)
  • [Doc] Fix return type of Python Docstring in ops.py (#2609) (by Rachel Gu)
  • [Doc] Add Python docstrings for several APIs (#2606) (by Ye Kuang)
  • [doc] Add python docstring for gui.py (#2604) (by Jiasheng Zhang)
  • [Doc] Add Python docstring for functions in matrix.py, impl.py, util.py and ops.py (#2602) (by Mingrui Zhang)
  • [opengl] Work group reduction (#2595) (by Bob Cao)
  • [bug] [vulkan] Fix bugs in SPIR-V codegen exposed under Linux (#2603) (by Yu Chang)
  • [Docs] Add docs for Expr class and functions in linalg.py (#2597) (by squarefk)
  • [Refactor] Added axes() function in impl.py (#2594) (by cruedo)
  • [ci] Fix one tiny bug (#2598) (by Jiasheng Zhang)
  • [ci] Fix appveyor with new building procedure (#2596) (by Jiasheng Zhang)
  • [Doc] Add Python docstring in several places (#2592) (by Yi Xu)
  • [Doc] Add Python Docstring in ops.py (#2593) (by Rachel Gu)
  • [Doc] Add Python docstring for Matrix class (#2587) (by FantasyVR)
  • [bug] recursively include examples in distribution script (#2591) (by Andrew Sun)
  • [Vulkan] Add SPIR-V codegen on Vulkan backend (#2582) (by Yu Chang)
  • [Doc] Add python docstring for misc.image class (#2589) (by Yidong Ma)
  • [Misc] Ignore the warning when first time finalizing ti.root(). (#2584) (by ljcc0930)
  • [ci] Correct windows build and test in CI (#2576) (by Jiasheng Zhang)
  • [refactor] Correct a few indices->axes renamings (#2577) (by Ye Kuang)
  • [Doc] Add Python docstring for SNode (#2580) (by Ye Kuang)
  • [opengl] Use OpenGL window visible hint instead of hiding after creation (#2581) (by Bob Cao)
  • [Refactor] Renamed ti.Index to ti.Axis (#2560) (by cruedo)
  • [Perf] Reduce GL backend's overhead (driver overhead & copy overhead) (#2532) (by Bob Cao)
  • [IR] Update CHI example to match SNode API (#2574) (by bx2k)
  • [Lang] Change the data layout for vector fields with that needs grad (#2575) (by Dunfan Lu)
  • [Vulkan] Add Vulkan to Taichi (#2573) (by Ye Kuang)
  • [IR] Support "packed" mode where shape will not be padded to a power of two (#2541) (by Yi Xu)
  • [vulkan] Split into managed and reference devices (#2570) (by Ye Kuang)
  • [Metal] Change Aot module for handling template arguments (#2529) (by Rachel Gu)
  • [refactor] Cleaned taichi/core/settings related import (#2567) (by Jiasheng Zhang)
  • [vulkan] Add Vulkan launcher (#2562) (by Ye Kuang)
  • [Bug] Fix racing in llvm bc generation. (#2569) (by Ailing)
  • [ci] Quick fix: bugs in upload.py (#2568) (by Jiasheng Zhang)
  • [ci] Allow build specific commit when uploading, used new building procedure. (#2563) (by Jiasheng Zhang)
  • [vulkan] Add GLSL-based codegen for Vulkan (#2557) (by Ye Kuang)

v0.7.26

12 Jul 07:54
e37bdb5

Choose a tag to compare

Highlights

Starting from this release, you can create new ti.field instances after invoking a kernel! 🎉 Note that this feature is currently supported on the CPU and the CUDA backend.

Full changelog:

  • [refactor] remove global_program in kernel.cpp (#2508) (by ljcc0930)
  • [misc] Added palette in taichi GUI for circles (#2504) (by Jiasheng Zhang)
  • [lang] Support ti.fields with shape after materialized (#2503) (by ljcc0930)
  • [doc] Add a basic doc explaining how to run Taichi CPP tests (#2502) (by Ye Kuang)
  • [lang] Support ti.FieldsBuilder() (#2501) (by ljcc0930)
  • [misc] Add needs_grad property for SNode (#2500) (by ljcc0930)
  • [lang] Support fake FieldsBuilder() with same memory location (#2493) (by ljcc0930)
  • [ci] Fix appveyor (#2496) (by Ye Kuang)
  • [ir] Add some comments to implementation of CFG optimizations and analyses (#2474) (by xumingkuan)
  • [Doc] Add .md documentation (#2494) (by Taichi Gardener)
  • [Example] Refactor example library (#2475) (by Andrew Sun)
  • [Doc] Remove all .rst docs (#2492) (by Taichi Gardener)
  • [Refactor] [cuda] Cleanup CUDA AtomicOpStmt codegen (#2490) (by Dunfan Lu)
  • [Perf] [cuda] Use warp reduction to improve reduction performance (#2487) (by Dunfan Lu)
  • [vulkan] Add kernel metadata and utils (#2481) (by Ye Kuang)
  • [opengl] [refactor] Use macro to generate atomic float functions (#2486) (by xndcn)

v0.7.25

02 Jul 01:22
fb8a0b4

Choose a tag to compare

Full changelog:

  • [ci] Fix docker prebuilt binary link (#2483) (by Ye Kuang)
  • [wasm] Implement materialize() for wasm backend and clean up unused functions (#2480) (by squarefk)
  • [misc] Unify std::filesystem header (#2478) (by Ye Kuang)
  • [opengl] Dump compute shader source code when print_kernel_llvm_ir is true (#2479) (by xndcn)
  • [metal] Fix randseedoffset_in_runtime_buffer (#2477) (by Ye Kuang)
  • [Metal] Support pointer SNode on Metal (#2441) (by Ye Kuang)
  • [wasm] Recover code (#2476) (by ljcc0930)
  • [AutoDiff] Automatically determine AdStack's size (#2438) (by xumingkuan)
  • [misc] Add checking of gitpython in cmake (#2473) (by xndcn)
  • [ci] Restrict slash-command-dispatch to PR only (#2472) (by Ye Kuang)
  • [ir] Use SNodeTree to implement root (#2449) (by Ye Kuang)
  • [Lang] Fix parameter conflict between ti.maybe_transform_ti_func_call_to_stmt() and ti.external_func_call() (#2470) (by squarefk)

v0.7.24

28 Jun 07:02
2577877

Choose a tag to compare

Full changelog:

  • [ci] Fix docker caching issue (#2468) (by Ye Kuang)
  • [ci] Separate Win build and test steps (#2465) (by Ye Kuang)
  • [misc] Fix parameters' type. (#2464) (by ljcc0930)
  • [wasm] [aot] Support AOT on webassembly backend. (#2461) (by ljcc0930)

v0.7.23

24 Jun 06:30
0b89df8

Choose a tag to compare

Full changelog:

  • [docker] Add twine installation in dockerfile (#2458) (by Jiasheng Zhang)
  • [WASM] Add set_root() for each WASM module (#2429) (by squarefk)
  • [ci] [docker] Build release with docker in ubuntu18.04 (#2457) (by Jiasheng Zhang)
  • [Metal] [Aot] Fix dumped runtime buffer size (#2454) (by Rachel Gu)
  • [Doc] Document lazy_grad() function (#2456) (by FantasyVR)
  • [misc] Update prtags.json to include aot (#2455) (by Rachel Gu)
  • [bug] Fix linux detection macro (#2453) (by Ye Kuang)
  • [bug] Fix assertion failure when there is a redundant cast (#2451) (by xumingkuan)
  • Set process DPI awareness when detecting system version less than 6.3 (Windows 8.1) (#2450) (by Bob Cao)
  • [ir] [bug] Make control-flow graph take function call into account (#2448) (by xumingkuan)

v0.7.22

21 Jun 09:52
2daa097

Choose a tag to compare

Full changelog:

  • [ir] [bug] Skip test_template (#2444) (by Ye Kuang)
  • [metal] Always initialize root SNode ListManager (#2443) (by Ye Kuang)
  • [metal] Separate kernel utils and AOT utils (#2440) (by Ye Kuang)
  • [ir] Add more comments to CFG optimizations and analyses (#2437) (by xumingkuan)
  • [Metal] Make Aot module dumps buffer size (#2431) (by Rachel Gu)
  • [ir] Support BLS in control-flow graph and add docstrings in build_cfg (#2412) (by xumingkuan)
  • [Lang] [refactor] Separate runtime and root initialization (#2424) (by Ye Kuang)
  • [ci] Moved windows build & test to github action (#2436) (by Jiasheng Zhang)
  • [metal] Add 3-stage GC Metal kernels (#2268) (by Ye Kuang)
  • [CUDA] [bug] Fix unified memory allocator when running on non-main thread (#2427) (by Ye Kuang)
  • [CI] Fixed windows build & test (#2434) (by Jiasheng Zhang)
  • [ci] Trigger Build and Test (CPU) after the required checks (#2435) (by Ye Kuang)
  • [Bug] Fix 'ti.get_addr' failures in async mode (#2430) (by Dunfan Lu)
  • [Lang] Add get_addr() to retrieve the buffer addr of an SNode (#2426) (by Dunfan Lu)
  • [IR] Fully deprecate trailing_bits (#2422) (by Kenneth Lozes)
  • [ir] Move infer_snode_properties out from StructCompiler (#2420) (by Ye Kuang)
  • [doc] Add documentation for IndexExtractor (#2416) (by Ye Kuang)
  • [Doc] Changed llvm-10 link and installation instruction (#2419) (by Jiasheng Zhang)
  • [wasm] [llvm] Support wasm with single thread (#2415) (by squarefk)
  • [ir] Add CHI Builder code examples (#2383) (by bx2k)
  • [ci] Remove travis configs (#2414) (by Ye Kuang)
  • [opt] [bug] Simplify modulo POT (Stage 2) (#2411) (by xumingkuan)
  • [Bug] Fixed internal lagrangian forces (#2413) (by Saullo G P Castro)
  • [lang] Add override to fix compilation warnings (#2410) (by Ye Kuang)
  • [ir] Make lower_scalar_pointer testable (#2407) (by Ye Kuang)

v0.7.21

07 Jun 08:33
15465fb

Choose a tag to compare

Full changelog:

  • [CI] Modified build.py to use token for all upload (#2408) (by Jiasheng Zhang)
  • [CI] Configured Jenkinsfile to support nightly test (#2405) (by Jiasheng Zhang)
  • [ir] Add random and atomic statements to IR Builder (#2379) (by bx2k)
  • [lang] Fix filesystem header not found on older GCC (#2401) (by Ye Kuang)
  • [Metal] Make file names dumped from aot configurable (#2402) (by Rachel Gu)
  • [Misc] Fixed that mass_spring_3d.py do not exit on import error (#2400) (by Jiasheng Zhang)
  • [lang] Add tests for refine_coordinates (#2382) (by Ye Kuang)
  • [CI] Simplified github CI procudure. (#2399) (by Jiasheng Zhang)
  • [CI] Support auto cancel workflows of previous commits (#2397) (by Jiasheng Zhang)
  • [CI] Recovered format check, add dependancy (#2394) (by Jiasheng Zhang)
  • [Opt] Optimize nested type casts (#2390) (by xumingkuan)
  • [type] [bug] Remove redundant component of bit pointer struct (#2393) (by Jiafeng Liu)
  • [CI] Add comment dispatch in pull request to support auto format (#2392) (by Jiasheng Zhang)
  • [Doc] Add more documentation regarding fast_gui (#2385) (by Ye Kuang)
  • [metal] Fix Nonetype due to un-materialized runtime (#2389) (by Rachel Gu)
  • [Doc] Update developer installation doc regarding LLVM_DIR (#2384) (by Ye Kuang)
  • [metal] Add AOT module builder for metal (#2372) (by Ye Kuang)
  • [ir] Add nodiscard to get_loop_guard/get_if_guard (#2377) (by xumingkuan)
  • [vulkan] Add Vulkan API (#2376) (by Ye Kuang)
  • [Lang] [ir] Consecutive indices for all snodes (#2327) (by Kenneth Lozes)
  • [Misc] Remove unnecessary scipy dependency in misc folder (#2373) (by Daniel)
  • [lang] Add AOT module interface (#2364) (by Ye Kuang)
  • [metal] Fix metal f32 bug in the print buffer (#2368) (by Rachel Gu)
  • [Doc] Change installer for archlinux from yaourt to yay (#2261) (by liberix)
  • [CI] Added issue_comment.yml to handle PR reply triggered actions (#2370) (by Jiasheng Zhang)
  • [misc] Add CI tag (#2371) (by Ye Kuang)
  • [Opt] Add error if bls analysis failed (#2366) (by Jack12xl)
  • [Misc] Modified build.py to better execute release (#2365) (by Jiasheng Zhang)
  • [lang] Fix serialization key value pairs (#2363) (by Ye Kuang)
  • [Misc] Add test flag when releasing taichi (#2362) (by Jiasheng Zhang)
  • [Example] Improve stable fluids (#2361) (by Rachel Gu)
  • [lang] Remove serializer's variadic template API (#2358) (by Ye Kuang)

v0.7.20

21 May 00:00
284f75e

Choose a tag to compare

Full changelog:

  • [ir] Remove "kernel" when printing ReturnStmt (#2353) (by xumingkuan)
  • [misc] Support Python 3.9 (#2274) (by Derived Cat)
  • [opt] Simplify modulo POT (Stage 1) (#2352) (by xumingkuan)
  • [opt] Slightly simplify algebraic simplification (#2337) (by xumingkuan)
  • [Refactor] Add a class Callable to unify Kernel and Function (#2338) (by xumingkuan)
  • [ir] Rename KernelReturnStmt to ReturnStmt (#2349) (by xumingkuan)
  • [lang] Support std::optional and enum classes in the serializer (#2350) (by Ye Kuang)
  • [IR] Support DiffRange shl (#2346) (by Kenneth Lozes)
  • [Docker] Fix the docker build by bumping CMake version in Dockerfile (#2348) (by Chengchen(Rex) Wang)
  • [ir] [test] Add tests for make_block_local (#2343) (by Ye Kuang)
  • [ir] Add ArithmeticInterpretor to evaluate a subset of CHI IR (#2342) (by Ye Kuang)
  • [opt] Better encapsulate BLS bounds (#2341) (by Ye Kuang)
  • [Example] cornell_box: Remove unused sphere (#2334) (by Aaryaman Vasishta)
  • [opt] Simplify replace_statements and improve demote_dense_struct_fors (#2335) (by xumingkuan)
  • [refactor] [test] Reorganize tests' file structure (#2336) (by xumingkuan)

v0.7.19

13 May 09:41
1935680

Choose a tag to compare

Full changelog:

  • [IR] Experimental real function support (Stage 1) (#2306) (by xumingkuan)
  • [Opt] Simplify multiplying/dividing POT (#2332) (by xumingkuan)
  • [Lang] Add ti.sym_eig for 2x2 matrices (#2328) (by Robslhc)
  • [perf] Loop-invariant code motion (#2323) (by Bob Cao)
  • [bug] fix potential bug in test_eig.py (#2329) (by Robslhc)
  • [example] Colored triangle rasterizer (#2315) (by Bob Cao)
  • [doc] Windows uses backslash for filepath (#2319) (by Bob Cao)
  • [gui] Set DPI awareness context to per-monitor-aware to create pixel perfect windows without system scaling. (#2320) (by Bob Cao)
  • [doc] wrap for to avoid confusion (#2322) (by Ravenclaw-OIer)
  • [ir] Make BLSAnalyzer testable (#2294) (by Ye Kuang)
  • [lang] Add rescale_index() and test (#2313) (by Kenneth Lozes)
  • [bugfix] Protect against path with space. (#2318) (by Bob Cao)
  • [LLVM] Add random seed support (#2297) (by Andrew Sun)
  • [Lang] Add ti.eig for 2x2 matrices (#2303) (by Robslhc)
  • support diffRange multiplication (#2310) (by Kenneth Lozes)

v0.7.18

01 May 12:55
9a31814

Choose a tag to compare

Full changelog:

  • [misc] Set up buildbot for gpu tests on linux (#2305) (by bx2k)
  • [doc] Update sparse computation doc (#2302) (by Yuanming Hu)