github taichi-dev/taichi v0.6.20

latest releases: v1.7.1, v1.7.0, v1.6.0...
3 years ago

Highlights:

  • Bug fixes
    • Fix environment variable TI_ARCH=xxx not work (#1528) (by 彭于斌)
  • CUDA backend
    • Use CUDA launch bound to limit register usage (#1516) (by Yuanming Hu)
    • Format CUDA assertions and access out-of-bound errors on the host (#1509) (by Yuanming Hu)
  • Examples
    • Add FEM elastic simulator: fem99 and fem128 (#1521) (by 彭于斌)
    • Add ad_gravity.py (compute gradient from potential energy) (#1522) (by 彭于斌)
    • Enhance nbody_oscillator.py with molecular force (#1529) (by 彭于斌)
  • GUI
    • Support gui.triangles() for batched triangle painting (#1520) (by 彭于斌)
  • Language and syntax
    • Enhance warning system and support runtime assert message (#1492) (by 彭于斌)
    • Support "break" and "continue" in static-fors (#1496) (by 彭于斌)
    • Support (a if cond else b) syntax in Taichi-scope (#1468) (by 彭于斌)
    • Make block local storage support coordinate offsets and improve its performance (#1497) (by Yuanming Hu)
  • Linux
    • Fix LLVM symbol leakage to prevent conflict with libGLX_mesa.so by LD version script (#1508) (by 彭于斌)
  • Performance improvements
    • Make BLS work for MPM (#1518) (by Yuanming Hu)
  • Refactor
    • Add "ti.field" and "ti.Matrix.field" for future deprecation of "ti.var" (#1502) (by 彭于斌)

Full changelog:

  • [Example] [autodiff] Add FEM elastic simulator: fem99 and fem128 (#1521) (by 彭于斌)
  • [cuda] Another mutex fix (#1534) (by Yuanming Hu)
  • [opengl] [test] Fix failed OpenGL tests these days (#1533) (by 彭于斌)
  • [misc] Prettify KernelProfiler outputs (#1525) (by Yuanming Hu)
  • [Example] [autodiff] Add ad_gravity.py (compute gradient from potential energy) (#1522) (by 彭于斌)
  • [cuda] Fix mutex on Turing GPUs (#1532) (by Yuanming Hu)
  • [Bug] [cli] Fix environment variable TI_ARCH=xxx not work (#1528) (by 彭于斌)
  • [Example] Enhance nbody_oscillator.py with molecular force (#1529) (by 彭于斌)
  • [metal] Introduce SNodeRep_* to be used in the generated SNode structs (#1527) (by Ye Kuang)
  • [test] Fix a typo in test_field.py that caused the failure of CI (#1523) (by Xudong Feng)
  • [bug] Fix dynamic SNode activation (#1526) (by Yuanming Hu)
  • [GUI] Support gui.triangles() for batched triangle painting (#1520) (by 彭于斌)
  • [Perf] Make BLS work for MPM (#1518) (by Yuanming Hu)
  • [test] Add test_fuse_dynamic.py to unit test (#1513) (by Ye Kuang)
  • [doc] Update documentaion on meta programming for #1374 (#1389) (by 彭于斌)
  • [CUDA] Use CUDA launch bound to limit register usage (#1516) (by Yuanming Hu)
  • [misc] Fix ti.init argument parsing when corresponding environment variable presents (#1517) (by Yuanming Hu)
  • [metal] Fix listgen when iterating over children of bitmasked (#1511) (by Ye Kuang)
  • [test] Fix test_field.py (#1514) (by Yuanming Hu)
  • [Refactor] [lang] Add "ti.field" and "ti.Matrix.field" for future deprecation of "ti.var" (#1502) (by 彭于斌)
  • [misc] Update README.md (#1512) (by Yuanming Hu)
  • [Lang] Enhance warning system and support runtime assert message (#1492) (by 彭于斌)
  • [CUDA] [llvm] Format CUDA assertions and access out-of-bound errors on the host (#1509) (by Yuanming Hu)
  • [opt] Enable dead instruction elimination for RangeAssumptionStmt (#1507) (by xumingkuan)
  • [Linux] Fix LLVM symbol leakage to prevent conflict with libGLX_mesa.so by LD version script (#1508) (by 彭于斌)
  • [cli] Fix "AttributeError" of pytest arguments (#1505) (by xumingkuan)
  • [cli] Remove the never used 'tid' command (#1494) (by 彭于斌)
  • [Lang] Support "break" and "continue" in static-fors (#1496) (by 彭于斌)
  • [doc] Fix code-block render issue in debugging.rst (#1484) (by 彭于斌)
  • [Lang] Support (a if cond else b) syntax in Taichi-scope (#1468) (by 彭于斌)
  • [async] Add test_fuse_dense.py to unit tests (#1504) (by Ye Kuang)
  • [Lang] [perf] Make block local storage support coordinate offsets and improve its performance (#1497) (by Yuanming Hu)
  • [metal] Misc tweaks to make #1480 easier to review (#1481) (by Ye Kuang)

Don't miss a new taichi release

NewReleases is sending notifications on new releases.