Skip to content

Releases: taichi-dev/taichi

v0.7.16

13 Apr 13:43
8d24c2f
Compare
Choose a tag to compare

Full changelog:

  • [IR] [refactor] Remove all get_kernel() and get_config() usages in IR passes (#2252) (by xumingkuan)
  • [refactor] Rename Tape class to TapeImpl (#2258) (by Ye Kuang)
  • [llvm] Well-behaved float64 random number generator for CPU and CUDA backends (#2253) (by Andrew Sun)
  • [test] Rename algorithm simplification test to algebraic simplification test (#2256) (by xumingkuan)
  • [Test] Migrate all cpp tests to googletest (#2238) (by bx2k)
  • [IR] [refactor] Unify field names in load/store/atomic statements (#2250) (by xumingkuan)
  • [test] [ir] Add tests for the alias_analysis pass (#2246) (by Ye Kuang)
  • [misc] Fix typo in cmake error messages (#2249) (by xumingkuan)
  • [misc] Sort python import order (#2247) (by Taichi Gardener)
  • [lang] Replaced usage of taichi.lang.core with taichi.core.util.ti_core. (#2245) (by Jiasheng Zhang)
  • [test] Add tests for value_diff_ptr_index pass (#2244) (by Ye Kuang)
  • [ir] Add RAII guards to IR Builder (#2242) (by xumingkuan)
  • [refactor] [ir] Rename "parallelize" to "num_cpu_threads" (#2243) (by xumingkuan)
  • [ir] Add global variables to IR Builder (#2240) (by xumingkuan)
  • [doc] Add installation instructions for Fedora and RHEL (#2239) (by Zhangyuan Nie)
  • [refactor] Add ASTResolver to properly resolve AST nodes to functions (#2234) (by Ye Kuang)
  • [Doc] Update doc typo (#2233) (by al)
  • [refactor] Cleanup python imports (#2232) (by Ye Kuang)
  • [refactor] Cleanup python imports (#2231) (by Ye Kuang)
  • [test] [ir] [bug] Fix googletest on Windows and fix a bug in IR Builder (#2230) (by xumingkuan)
  • [ir] Add more statements and tests to IR Builder (#2225) (by xumingkuan)
  • [misc] Make taichi-gardener also run the required CI jobs (#2229) (by Ye Kuang)
  • [refactor] Cleanup python imports (#2226) (by Ye Kuang)
  • [example] Update mgpcg.py (#2228) (by qbao0x3273)
  • [refactor] Clean up python import statements (#2224) (by Ye Kuang)
  • [test] Enable C++ unit tests on CI (#2222) (by Ye Kuang)
  • [test] Migrate test_alg_simp to googletest (#2220) (by Ye Kuang)
  • [refactor] Create a library taichi_isolated_core that is free from pybind11 (#2218) (by Ye Kuang)
  • [test] [ir] Add a simple unit test for IRBuilder (#2214) (by Ye Kuang)
  • [ir] Add a constructor for the Kernel class to handle CHI IR (#2213) (by xumingkuan)

v0.7.15

14 Mar 09:50
cff542c
Compare
Choose a tag to compare

Full changelog:

  • [refactor] Move TypedConstants to taichi/ir/type (#2211) (by Ye Kuang)
  • [refactor] Move ASTBuilder and FrontendContext to frontend_ir (#2210) (by bx2k)
  • [ir] [transforms] Added assertion that indices won't cause overflow under debug mode (#2199) (by Jiasheng Zhang)
  • [refactor] Move code away from lang_utils (#2209) (by Ye Kuang)
  • [refactor] Move type related utils away from lang_util.h (#2206) (by Ye Kuang)
  • [refactor] Add SNode::GradInfoProvider to isolate SNode from Expr (#2207) (by Ye Kuang)
  • [refactor] Separate SNode read/write kernels into a dedicated class (#2205) (by Ye Kuang)
  • [IR] Add an IR Builder with some basic functions (#2204) (by xumingkuan)
  • [test] Add a basic unit test using googletest (#2201) (by Ye Kuang)
  • [refactor] Make taichi/common self contained (#2200) (by Ye Kuang)
  • [ir] Generate yaml documentation for statement classes (#2192) (by xumingkuan)
  • [test] Add googletest as a submodule (#2197) (by Ye Kuang)
  • [test] [opengl] Avoid floor division cornor cases by adjusting test data (#2191) (by bx2k)
  • [Bug] [lang] Fix AST not being transformed inside ti.ndrange (#2187) (by 彭于斌)

v0.7.14

13 Feb 07:03
58feee3
Compare
Choose a tag to compare

Full changelog:

  • [misc] Refactor release workflow to upload the wheel artifacts (#2186) (by Ye Kuang)
  • [test] Fix GPU testing on zhen (#2184) (by Yuanming Hu)
  • [misc] Fix PyPi upload step with envs (#2182) (by Ye Kuang)

v0.7.13

05 Feb 13:33
26bda35
Compare
Choose a tag to compare

Changelog:

  • [bug] Disable test_dense_dynamic for CUDA (#2179) (by Ye Kuang)
  • [type] Apply quant_opt_atomic_demotion when storing all components (#2176) (by xumingkuan)
  • [type] Improve bit struct store fusion and atomic demotion (#2175) (by xumingkuan)
  • [type] Atomic demotion for bit struct stores (#2174) (by xumingkuan)
  • [refactor] Move LLVM CustomType-related functions to codegen_llvm_quant.cpp (#2173) (by Taichi Gardener)
  • [type] Use a single atomicCAS for BitStructStoreStmt (#2171) (by xumingkuan)
  • [async] Add option async_opt_fusion_max_iter (#2170) (by Yuanming Hu)
  • [async] Set the default value of async_flush_every to 50 (#2169) (by xumingkuan)
  • [async] Add config flag async_max_fuse_per_task (#2165) (by Ye Kuang)
  • [type] Support reading bit_struct as its physical type (#2166) (by Yuanming Hu)
  • [infra] Support Timelines as a multithreading profiler (#2164) (by Yuanming Hu)
  • [async] [lang] [opt] Add ti.loop_unique(covers=...) to improve task dependence analysis (#2163) (by xumingkuan)
  • [misc] Add experimental Python 3.9 support (#2157) (by 彭于斌)
  • [lang] Expose SNode ID to python (#2162) (by Ye Kuang)
  • [cuda] Add argument "gpu_max_reg" to ti.init (#2161) (by Yuanming Hu)
  • [opt] [async] Improve full_simplify and optimize_dead_store (#2160) (by xumingkuan)
  • [misc] Enable pypi upload for macOS (#2159) (by Ye Kuang)
  • [misc] Deleted 3 debug messages in codegen_cc.cpp (#2158) (by Jiasheng Zhang)
  • [sparse] Make memory allocator more robust (#2156) (by Yuanming Hu)
  • [misc] Fix SNode max_num_elements to use int64 (#2154) (by Ye Kuang)
  • [opt] Simplify bit_cast of bit_cast (#2152) (by xumingkuan)
  • [async] [bug] Fix missing memory access options in async mode (#2150) (by xumingkuan)
  • [type] Fix struct-for block dim on bit_structs (#2151) (by Yuanming Hu)
  • [misc] Add a Github Action workflow to trigger on publishing a release (#2149) (by Ye Kuang)
  • [type] Fix arm64 flush to zero (#2148) (by Yuanming Hu)
  • [type] Update custom data type APIs (#2147) (by Yuanming Hu)
  • [type] Support basic custom int/float types on metal (#2145) (by Ye Kuang)
  • [type] Local adder structure (#2136) (by Xuanda Yang)

v0.7.10

15 Dec 11:31
0f0205f
Compare
Choose a tag to compare

Changelog:

  • [type] Improve GlobalStoreStmt precision on custom floats (#2093) (by Yuanming Hu)
  • [type] [bug] Support atomic add negative numbers for custom types (#2091) (by Jiafeng Liu)
  • [bug] Fix unsort_edges to use tmp_data (#2092) (by Ye Kuang)
  • [misc] Expose "StateFlowGraph::benchmark_rebuild_graph()" (#2090) (by Yuanming Hu)
  • [async] Add bit mask in the SFG node edges container (#2089) (by Ye Kuang)
  • [async] Use monospace font for DOT graph (#2087) (by xumingkuan)
  • [lang] [bug] Clamp int constant to its native range (#2083) (by Ye Kuang)
  • [type] Support atomic add on CustomFloatType (#2085) (by Jiafeng Liu)
  • [async] Call sort_edges() once during graph rebuilding (#2086) (by Ye Kuang)
  • [ir] SNodeOpStmt use GlobalPtrStmt for all SNodeOpTypes (#2082) (by xumingkuan)
  • [Lang] Fix ndrange symbol leakage in AST transformer (#2081) (by 彭于斌)
  • [async] Add customized container for async state to node map (by Ye Kuang)
  • [type] Support atomic add on CustomIntType (#2078) (by Yuanming Hu)
  • Revert "clean up (#2070)" (#2079) (by Ye Kuang)
  • clean up (#2070) (by Ye Kuang)

v0.7.8

21 Nov 00:09
1ce6965
Compare
Choose a tag to compare

Changelog:

  • [perf] Fix block local storage transform performance (#2057) (by Yuanming Hu)
  • [OpenGL] [bug] Fix OpenGL for global fields with unsigned type (#2051) (by 彭于斌)
  • [type] [refactor] Add compute_type for CustomIntType (#2047) (by Jiafeng Liu)
  • [Example] Add mass_spring_game.py (#2056) (by Yuanming Hu)
  • [Example] Add vortex_rings.py (#2055) (by Yuanming Hu)

v0.7.7

21 Nov 00:08
683bec6
Compare
Choose a tag to compare

Changelog:

  • [test] Random nits on tests (#2019) (by 彭于斌)
  • [type] Refactor bit pointers for SNodeLookupStmt in type check transform (#2046) (by Xuanda Yang)
  • [type] Support SNodeLookUp with bit_array (#2041) (by Xuanda Yang)
  • [misc] Update README.md (#2044) (by Yuanming Hu)

v0.7.6

21 Nov 00:07
26b4dcd
Compare
Choose a tag to compare

Changelog:

  • [test] Random nits on tests (#2019) (by 彭于斌)
  • [type] Refactor bit pointers for SNodeLookupStmt in type check transform (#2046) (by Xuanda Yang)
  • [type] Support SNodeLookUp with bit_array (#2041) (by Xuanda Yang)
  • [misc] Update README.md (#2044) (by Yuanming Hu)

v0.7.5

21 Nov 00:04
d24c78a
Compare
Choose a tag to compare

Highlights:

  • Language and syntax
    • Rename "ti.cache_shared" to "ti.block_local" (#2030) (by Zhiya Luo, welcome!)

Full changelog:

  • [opt] Algebraic simplification for sar/shl/shr (#2031) (by xumingkuan)
  • [type] Support bit-level read and write in Python-scope (#2029) (by Jiafeng Liu)
  • [Lang] [refactor] Rename "ti.cache_shared" to "ti.block_local" (#2030) (by Zhiya Luo)
  • [type] Refactor bit pointers (#2028) (by Yuanming Hu)
  • [async] Use loop-unique info for fusion (#2012) (by xumingkuan)
  • [ir] [opt] Demote BitExtractStmt into a series of binary operations for optimization (#1795) (by 彭于斌)
  • [misc] Fix Type* ownership in Python-scope (#2026) (by Yuanming Hu)
  • [example] Interpolate vertices for mciso_advanced.py to make it smoother (#1991) (by 彭于斌)
  • [opengl] [refactor] Move rand_state from runtime to gtmp to reduce SSBO numbers (#2021) (by 彭于斌)
  • [type] Add BitArrayType and corresponding SNodes (#2017) (by Xuanda Yang)
  • [opengl] [refactor] Reduce SSBO numbers: merge earg with args (#2020) (by 彭于斌)
  • [misc] Add clear_profile_info() (#2018) (by Ye Kuang)
  • [opengl] [perf] Grid-stride loop for all type of loops (#2016) (by 彭于斌)
  • [metal] Support pointer SNode in codegen (#2015) (by Ye Kuang)
  • [async] Support activation demotion in "if" statements (#2009) (by Yuanming Hu)

v0.7.4

06 Nov 05:32
8d57dca
Compare
Choose a tag to compare

Changelog:

  • [Type] Support bit-level load and store (#1996) (by Jiafeng Liu)
  • [sparse] Fix allocator initialization (#2010) (by Yuanming Hu)
  • [async] Improve benchmarks (#2005) (by Yuanming Hu)
  • [metal] Revise NodeManager's implementation due to weak memory order (#2008) (by Ye Kuang)
  • [OpenGL] [perf] Utilize glDispatchComputeIndirect to prevent sync when dynamic ranges are used (#2007) (by 彭于斌)