OpenAI создал новый язык программирования Triton

OpenAI создал новый язык программирования Triton
11.08.2021
39083

Американская компания OpenAI, которая занимается созданием технологий машинного обучения, представила новый язык программирования Triton. Он станет альтернативой CUDA от Nvidia и поможет быстро запускать модели с использованием мощностей видеокарты.

Машинному обучению – мощную графику

Производительные современные видеокарты давно скупают майнеры. Быстрая память и мощные процессоры, встроенные в них, позволяют ускорить вычисление хешей и эффективнее добывать криптовалюту.

Исследователи тоже «положили глаз» на графические адаптеры. Под них пишут программы для просчета сложных математических моделей, тренировки систем машинного обучения и других нагруженных вычислений.

Производитель видеокарт Nvidia разработал собственный инструмент программирования CUDA для работы с графическими адаптерами. Но простым его не назовешь – по крайней мере, специалисты, которые раньше писали на Python, испытывают сложности с переходом на CUDA.

Triton призван решить эту проблему. Он столь же прост, как Python, но при этом позволяет создавать сложные модели для запуска на видеокартах.

Назначение Triton

Triton – проект с открытым исходным кодом. Его репозиторий уже есть на GitHub.

Разработчик Triton Филипп Тилле – на тот момент выпускник Гарварда, а сейчас – сотрудник OpenAI, – впервые представил его в 2019 году. Он хотел создать язык, который был выразительнее стандартных библиотек для искусственного интеллекта, например, cuDNN от Nvidia, и мог бы обрабатывать широкий спектр операций с матрицами, задействованными в нейронных сетях. В то же время Тилле хотел добиться переносимости и производительности, сопоставимой с cuDNN и другими популярными решениями.

Triton позволит исследователям, у которых нет опыта работы с CUDA, писать высокоэффективный код для выполнения на графическом процессоре. Максимальной производительности можно будет добиться, приложив небольшие усилия. Например, чтобы создать ядра матричного умножения FP16, достаточно всего 25 строк кода.

 

Производительность Triton по сравнению с популярными решениями в задачах умножения матриц

 

В OpenAI подчеркнули, что с Triton удалось создать ядра, которые в два раза эффективнее, чем эквивалентные реализации с библиотекой Torch для Python. Такой код часто используют в задачах глубокого обучения, и он потенциально может повысить эффективность работы нейросетей.

Особенности языка

Графические процессоры даже с CUDA и другими инструментами очень сложно оптимизировать для обеспечения локальности и параллелизма вычислений. Тилле решил использовать концепцию тайлов (плиток) – что-то подобное есть и в CUDA, но реализовано иначе.

В Triton матрицы, которые используются в программе машинного обучения, разбиваются на тайлы – фрагменты, которые можно эффективно распределять по общей памяти SRAM и быстрой регистровой памяти и обрабатывать параллельно с помощью нескольких потоков инструкций. Но если в CUDA для этого приходится создавать явные операторы синхронизации между потоками инструкций программы, в Triton все происходит автоматически.

 

Автоматическое распараллеливание вычислений в Triton

 

Семантика Triton определяет тайлы как встроенные типы. Компилятор Triton знает, как эффективно распределить эти фрагменты между ядрами графического процессора и сопровождающими их регистрами. Выполняет он и другие оптимизации, так что исследователям не нужно сильно вникать в детали реализации.

Пока на Triton можно работать только с видеокартами Nvidia. Но Тилле и его коллеги ищут единомышленников, которые смогли бы заняться портированием проекта и на видеокарты AMD.

Если вам удобнее смотреть новости в телеграме, то вот наша группа – ИНФОСТАРТ.

Автор:
Обозреватель

См. также

После ухода Slack из России в 2024 году бизнес стал переходить на отечественные корпоративные мессенджеры. Один из самых универсальных — 1С-Коннект. Расскажем подробнее о нём и других решениях российских разработчиков.

24.04.2025    348    AnastasiaKl    4       

3

С января по март 2025 года Ассоциация КП ПОО провела исследование отечественных систем виртуализации, коммуникации и контейнеризации по 266 показателям. Результаты показали, что медианная технологическая зрелость у этих ИТ-решений превышает 75%.

04.04.2025    1141    orenk0t    1       

0

Минцифры подготовило проект постановления по запуску платформы, на которой ИТ-специалисты могут пройти добровольное тестирование и подтвердить свою квалификацию.

11.12.2024    1142    user1915669    3       

2

Федеральная налоговая служба запустила интерактивный сервис, позволяющий формировать в машиночитаемом виде договоры, контракты, соглашения и спецификации. Чтобы создать документ и скачать получившийся файл, регистрация не требуется.

03.12.2024    918    user2114475    0       

2

Российский Альянс по искусственному интеллекту обновил требования к специалистам по ИИ: вышла новая модель с основными профессиями и навыками. Теперь базовых профессий в сфере ИИ осталось только четыре.

01.11.2024    1057    user1915669    0       

3

Система платежей «Волна» по планам сделает возможной бесконтактную оплату для владельцев IPhone в России, а BRICS Pay позволит совершать безналичные расчеты иностранцам по картам Visa и Mastercard.

23.10.2024    1394    AnastasiaKl    0       

4

Конструктор сайтов Wix уходит из России с 12 сентября 2024 года – перестанут работать все российский аккаунты. Сайты, привязанные к аккаунтам, также перестанут работать.

11.09.2024    1315    user1915669    2       

2

ИИ научат разработке цифровых интегральных микросхем – несколько российских научных институтов заявили об участии в проекте. Проект рассчитан на 3 года – с 2024 по 2026.

23.07.2024    977    user1915669    0       

2
Инфостарт бот

Оставьте свое сообщение