-
It is not hard to tell that the two groups have their needs overlapped to a large extent. To improve user experience, we will continue to optimize our CHI (Chi Hierarchical Instructions) IR, enhance modularization and reusability, and keep abreast of CUDA, Vulkan, and Metal developments. Specifically, we hope to further reduce the compile time for Group A users, and CHI JIT Cache is one such attempt. Meanwhile, we are proceeding with the AOT development, including the Foreign Function Interface (FFI) feature, so that Group B users can use Taichi more comfortably.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
To have a better understanding of the scenarios where Taichi is (spontaneously) applied, we launched taichi-dev/awesome-taichi to collect and present top-notch Taichi-empowered projects. Most of the examples given below are available in this repo.
-
Fast-Poisson-Image-Editing
A fast poisson image editing implementation that can utilize multi-core CPU or GPU to handle a high-resolution image input.
Poisson Image Editing (Pérez et al) is a frequently cited paper. Trinkle23897 and shawnchan2014 implemented this classic algorithm with Taichi as the backend:
-
Taichi.js is a powerful project that adds a JS frontend to Taichi and compiles Taichi to WASM with Emscripten, allowing users to transform Javascript functions into WebGPU compute shaders for massive parallelization. If your browser supports WebGPU, you can try it out on Playground | taichi.js.
-
difftaichi
10 differentiable physical simulators built with Taichi differentiable programming (DiffTaichi, ICLR 2020)
DiffTaichi, which optimizes robots' movements, is an early-stage trial of Taichi's AutoDiff feature:
-
PlasticineLab
Code for paper "PlasticineLab: A Soft-Body Manipulation Benchmark with Differentiable Physics"
PlasticineLab: A new differentiable physics benchmark, which includes a diverse collection of soft body manipulation tasks:
-
CPDeform
[ICLR 2022] Contact Points Discovery for Soft-Body Manipulations with Differentiable Physics
CPDeform: Contact Points Discovery for Soft-Body Manipulations with Differentiable Physics:
-
Cameray is a project I personally find very intriguing. The author simulates SLR lenses with ray tracing, a feature enabled by Taichi, and offers a node editor as well.
-
You can use Taichi to create various physics solvers. A typical project is MLS-MPM-based taichi_elements, which enables simulations with one billion particles on a single GPU - the highest precision ever achieved by MPM on a single GPU! And all it takes is about 1,000 lines of code.
-
Another notable project is PyASFLIP by Raymond, showcasing a multi-scale model for coupling strands with shear-dependent liquid. You can refer to the paper accepted by SIGGRAPH 2021 for details.
-
LBM_Taichi
Fluid solver based on Lattice Boltzmann method implemented by taichi programming language
LBM_Taichi is one of the first computational fluid dynamics projects written in Taichi and still runs smoothly after two years.
-
Another beautiful project I want to share with you here is 2d-fluid-simulator contributed by a user from Japan, takah29, based on the finite difference method:
-
victoriacity implemented a GPU-accelerated molecular dynamics project Taichi MD, as shown below:
-
ray-tracing-one-weekend-taichi
A fast python implementation of Ray Tracing in One Weekend using python and Taichi
Renderers are not something we can avoid talking about since Taichi was designed for computer graphics at the very beginning. An impressive project is about the implementation of the classic Ray Tracing in One Weekend using Taichi, by bsavery.
-
bsavery went on and explored more possibilities of Taichi in rendering: Blender Python Renderer, which is a GPU ray tracer embedded in Blender.
-
Some users are quite ambitious - in a good way :). For example, theAfish simulates a black hole accredition disk based on ray marching (regardless of rotation in this case). General relativity is also involved here - what a bonus!