Repolode
taichi-dev

taichi-dev/taichi

Встраиваемый в Python язык программирования, который JIT-компилирует численные ядра для запуска на CPU и GPU, включая CUDA, Vulkan и Metal.

Звёзды
28,450
Форки
2,392
Открытые issues
926
Последний коммит
в прошлом месяце

Что это?

Taichi Lang — императивный язык параллельного программирования для высокопроизводительных численных вычислений, встроенный в Python. Функции с декоратором @ti.kernel компилируются на лету с помощью инструментария на базе LLVM в нативные инструкции CPU или GPU. Благодаря этому ресурсоёмкий код на Python может выполняться параллельно без переписывания на C++ или CUDA.

Синтаксис языка близок к Python, а сам язык интегрируется с NumPy и PyTorch. Контейнеры данных, называемые SNodes, позволяют описывать иерархические многомерные поля, в том числе пространственно-разреженные структуры. Код пишется один раз и может работать на поддерживаемых бэкендах, таких как CUDA, Vulkan, OpenGL, Apple Metal и CPU с архитектурами x64/ARM.

В проект также входят поддержка дифференцируемого программирования и 3D-визуализатор на базе Vulkan. В галерее и примерах показаны физическое моделирование, рендеринг и гидродинамика.

Ключевые возможности

  • 01Пишите ядра с синтаксисом Python и JIT-компилируйте их в код для CPU или GPU.
  • 02Работает с CUDA, Vulkan, OpenGL, Apple Metal и CPU с архитектурами x64/ARM.
  • 03Поддерживает пространственно-разреженные структуры данных с помощью контейнеров SNode.
  • 04Интегрируется с NumPy и PyTorch.
  • 05Включает поддержку дифференцируемого программирования и 3D-визуализатор на базе Vulkan.

Сценарии использования

  • Ускорение численных симуляций на Python, например моделирования жидкостей, частиц и физических систем.
  • Создание прототипов GPU-алгоритмов без ручного написания кода на CUDA или шейдеров.
  • Разработка дифференцируемых конвейеров для физики или графики.
  • Создание экспериментов с рендерингом или визуальными эффектами, требующих параллельных вычислений.

Быстрый старт

  1. 1

    Установите Taichi с помощью pip

    pip install taichi
  2. 2

    Запустите галерею демонстраций

    ti gallery

Что важно знать

  • Только Python 3.6–3.10, 64-разрядная версия.
  • Предварительные nightly-пакеты могут аварийно завершаться, поскольку они не прошли полное тестирование.

В подборках

Темы

Частые вопросы

Что такое taichi?
Встраиваемый в Python язык программирования, который JIT-компилирует численные ядра для запуска на CPU и GPU, включая CUDA, Vulkan и Metal. Taichi Lang — императивный язык параллельного программирования для высокопроизводительных численных вычислений, встроенный в Python. Функции с декоратором @ti.kernel компилируются на лету с помощью инструментария на базе LLVM в нативные инструкции CPU или GPU. Благодаря этому ресурсоёмкий код на Python может выполняться параллельно без переписывания на C++ или CUDA.
taichi можно использовать бесплатно? Какая у него лицензия?
taichi распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
taichi всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в taichi — 5 окт. 2026 г..
Для чего можно использовать taichi?
Ускорение численных симуляций на Python, например моделирования жидкостей, частиц и физических систем. Создание прототипов GPU-алгоритмов без ручного написания кода на CUDA или шейдеров. Разработка дифференцируемых конвейеров для физики или графики. Создание экспериментов с рендерингом или визуальными эффектами, требующих параллельных вычислений.
Как установить taichi?
Установите Taichi с помощью pip: pip install taichi Запустите галерею демонстраций: ti gallery
Где скачать taichi?
Исходный код и инструкции по установке — на GitHub: https://github.com/taichi-dev/taichi

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Header-only библиотека C++ для написания параллельных программ на основе графов задач с поддержкой многопоточности на CPU и вычислений на GPU через CUDA.

Бэкенд и API#concurrent-programming#multithreading#parallel-computing
12,2 тыс.+6 за неделю1,4 тыс.C++OtherАктивно поддерживаетсяОбновлён 23 дня назад

Профилировщик Python, показывающий загрузку CPU и GPU, а также потребление памяти для каждой строки кода; может предлагать оптимизации с помощью ИИ.

13,6 тыс.+13 за неделю446PythonApache-2.0Активно поддерживаетсяОбновлён 6 дней назад

Библиотека C/C++ для оптимизации треугольных сеток: ускоряет их рендеринг на GPU и уменьшает размер хранения и передачи.

Инструменты разработчика#computer-graphics#gpu#mesh-processing
8,8 тыс.+75 за неделю751C++MITАктивно поддерживаетсяОбновлён 24 дня назад