Taichi (Tai Chi) v1.5.0 released

Taichi v1.5.0 is now released. Taichi Lang is an open source, imperative, parallel programming language for high-performance numerical computing. It is embedded in Python and uses a just-in-time compiler (JIT) framework, such as LLVM, to offload computationally intensive Python code into native GPU or CPU instructions.

The specific updates are as follows:

deprecation notice

  • ndarray no longer accepts field_dim, replaced by ndim parameter.
  • [RFC] Deprecate the ti.cc backend in favor of TiRT and its C API

new function

AOT

  • Taichi Runtime (TiRT) now supports Apple's Metal API and OpenGL ES for compatibility with older mobile platforms. Taichi programs can now be deployed to any major consumer device.
    Note that deployment of Taichi programs on mobile platforms is experimental.
  • Taichi AOT now fully supports float16 dtype.

Ndarray

  • ndarrays now support Out of bound checks

Improve

Python front end

Returning a structure is now supported on LLVM-based backends (CPU and CUDA backends). This structure can contain vectors and matrices, and can be nested with other structures. Example:

s0 = ti.types.struct(a=ti.math.vec3, b=ti.i16)
s1 = ti.types.struct(a=ti.f32, b=s0)

@ti.kernel
def foo() -> s1:
    return s1(a=1, b=s0(a=ti.math.vec3(100, 0.2, 3), b=1))

print(foo())  # {'a': 1.0, 'b': {'a': [100.0, 0.2, 3.0], 'b': 1}}

Performance

  • Support atomic operation of CUDA backend on half2 (compute capability > 60). Can be enabled with ti.init(half2_vectorization=True). This feature can effectively speed up the Nerf training process, see this repo for details.

GGUI

  • GGUI now has no calculation backend limit. In addition to CPU, CUDA, Vulklan previously supported by GGUI, it is now also possible to use Metal, OpenGL, AMDGPU or DirectX 11.
  • GGUI is now verified on mesa's software rasterizer lavapipe, you can use this solution for headless server visualization, or on a server without graphics capabilities (such as A100).
  • Added fps_limit option for adjusting the maximum frame rate in GGUI.

See the release notes for more details .

Guess you like

Origin www.oschina.net/news/234496/taichi-1-5-0-released