Repolode
taichi-dev

taichi-dev/taichi

Pythonに組み込めるプログラミング言語。数値計算カーネルをJITコンパイルし、CUDA、Vulkan、MetalなどのCPUやGPUで実行できます。

スター
28,450
フォーク
2,392
未解決の Issue
926
最終コミット
先月

これは何?

Taichi Langは、高性能な数値計算向けの命令型並列プログラミング言語で、Pythonに組み込んで使えます。@ti.kernelでデコレートした関数は、LLVMベースのツールチェーンによって実行時にネイティブなCPUまたはGPU命令へコンパイルされるため、計算負荷の高いPythonコードをC++やCUDAで書き直さずに並列実行できます。

構文はPythonに近く、NumPyやPyTorchと連携します。SNodeと呼ばれるデータコンテナを使うと、空間的に疎なレイアウトを含む、階層型の多次元フィールドを定義できます。コードは一度書けば、CUDA、Vulkan、OpenGL、Apple Metal、x64/ARM CPUなど、対応するバックエンドをターゲットにできます。

プロジェクトには、微分可能プログラミングのサポートと、Vulkanベースの3Dビジュアライザーも含まれています。ギャラリーとサンプルでは、物理シミュレーション、レンダリング、流体力学を扱っています。

主な機能

  • 01Python構文でカーネルを記述し、JITコンパイルしてCPUまたはGPUコードとして実行できます。
  • 02CUDA、Vulkan、OpenGL、Apple Metal、x64/ARM CPUで動作します。
  • 03SNodeコンテナを使った、空間的に疎なデータ構造をサポートします。
  • 04NumPyやPyTorchと連携します。
  • 05微分可能プログラミングとVulkanベースの3Dビジュアライザーを備えています。

ユースケース

  • Pythonで流体、粒子、物理システムなどの数値シミュレーションを高速化する。
  • CUDAやシェーダーコードを手書きせずにGPUアルゴリズムのプロトタイプを作成する。
  • 微分可能な物理演算やグラフィックスのパイプラインを構築する。
  • 並列計算が必要なレンダリングや視覚効果の実験を開発する。

クイックスタート

  1. 1

    pipでTaichiをインストール

    pip install taichi
  2. 2

    デモギャラリーを起動

    ti gallery

使う前に知っておきたいこと

  • Python 3.6〜3.10のみ対応(64ビット)。
  • プレリリース版のnightlyパッケージは十分にテストされていないため、クラッシュする場合があります。

収録されている特集

トピック

よくある質問

taichi とは?
Pythonに組み込めるプログラミング言語。数値計算カーネルをJITコンパイルし、CUDA、Vulkan、MetalなどのCPUやGPUで実行できます。 Taichi Langは、高性能な数値計算向けの命令型並列プログラミング言語で、Pythonに組み込んで使えます。@ti.kernelでデコレートした関数は、LLVMベースのツールチェーンによって実行時にネイティブなCPUまたはGPU命令へコンパイルされるため、計算負荷の高いPythonコードをC++やCUDAで書き直さずに並列実行できます。
taichi は無料で使えますか?ライセンスは?
taichi は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
taichi は今もメンテナンスされていますか?
半年以内に更新あり。taichi の最終コミットは 2026年10月5日 です。
taichi は何に使えますか?
Pythonで流体、粒子、物理システムなどの数値シミュレーションを高速化する。 CUDAやシェーダーコードを手書きせずにGPUアルゴリズムのプロトタイプを作成する。 微分可能な物理演算やグラフィックスのパイプラインを構築する。 並列計算が必要なレンダリングや視覚効果の実験を開発する。
taichi のインストール方法は?
pipでTaichiをインストール: pip install taichi デモギャラリーを起動: ti gallery
taichi はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/taichi-dev/taichi

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト

タスクグラフを使った並列処理向けのヘッダーオンリーC++ライブラリ。CPUのマルチスレッドとCUDA GPUに対応。

バックエンド・API#concurrent-programming#multithreading#parallel-computing
1.2万+6 今週1418C++Other活発にメンテナンス更新 23 日前