Triton (язык программирования)
Triton | |
---|---|
Тип | предметно-ориентированный язык программирования и параллельный язык программирования[вд] |
Разработчик | OpenAI |
Первый выпуск | июль 2021 |
Аппаратная платформа | Linux |
Тритон (Triton) — язык программирования, ориентированный на создание программ глубокого обучения, работающих на графических ускорителях. Разработан корпорацией OpenAI[1]; фактически является предметно-ориентированной надстройкой над Python[2]; среда языка обеспечивает компиляцию в исполняемый код.
Разработчик — выпускник Гарварда Филипп Тилле[3]; впервые язык представлен на семинаре в 2019 году[4].
Предоставляет набор примитивов для выполнения различных матричных операций (аналогично NumPy). Используется версия Python не менее 3.6, после чего код обрабатывается JIT-компилятором и выполняется на графическом процессоре.
Цель создания языка — создать среду с открытым исходным кодом для написания быстрого кода с более высокой производительностью, чем Cuda, при этом с большей гибкостью, чем другие существующие предметно-ориентированные языки. Для этого в языке применяются автоматическая векторизация, предварительная выборка данных и использование тензорных ядер.
Для ускорения работы с матрицами, они разбиваются на срезы («плитки», англ. tiles)[3], которые эффективнее обрабатываются параллельными потоками, причём синхронизация этих операций, в отличие от CUDA, происходит автоматически.
Работает под Linux[2] на графических процессорах Nvidia[3] (версии 7.0+); в разработке поддержка графических ускорителей AMD[3]
Примечания
[править | править код]- ↑ OpenAI releases Triton, a programming language for AI workload optimization (амер. англ.). VentureBeat (28 июля 2021). Дата обращения: 19 сентября 2021.
- ↑ 1 2 Triton — глубинное обучение на GPU для чайников | Издательство «Открытые системы»
- ↑ 1 2 3 4 OpenAI создал новый язык программирования Triton
- ↑ Triton 1.0: язык программирования GPU для нейросетей
Ссылки
[править | править код]- triton-lang.org — официальный сайт Triton
- Проект Triton (язык программирования) на сайте GitHub