TGINSIGHT CHAT
Machinelearning
@ai_machinelearning_big_data
ТехнологииПогружаемся в машинное обучение и Data Science Показываем как запускать любые LLm на пальцах. По всем вопросам - @haarrp @itchannels_telegram -🔥best channels Реестр РКН: clck.ru/3Fmqri
Последние посты
Тег: #cuda · 3 постов
🌟CUDA-L2: ИИ научился писать CUDA-ядра эффективнее инженеров NVIDIA. Исследовательская группа DeepReinforce разработала систему полностью автоматического написания GPU-кода для матричного умножения под названием CUDA-L2. Этот код работает на 10–30% быстрее, чем cuBLAS и cuBLASLt, а это, на минуточку, уже оптимизированные библиотеки от самой NVIDIA. Обычно такие библиотеки создаются вручную людьми, которые используют готовые шаблоны ядер. А автотюнеры лишь подкручивают параметры, например, размер тайлов. Но DeepReinforce считают, что даже критически важные и глубоко оптимизированные задачи, как HGEMM, могут быть улучшены с помощью LLM, работающей в связке с RL. В системе CUDA-L2 языковая модель буквально пишет исходный код CUDA с нуля для каждого размера матрицы. Она не просто меняет параметры, она может менять структуру кода, циклы, стратегию тайлинга, паддинг и даже свизл-паттерны. А еще, она сама выбирает стиль программирования - будь то сырой CUDA, CuTe, CUTLASS или inline PTX. Процесс выглядит так: цикл RL запускает сгенерированные ядра на реальном железе, измеряет скорость и корректность, а затем обновляет LLM. Со временем модель выводит свои собственные правила производительности, вместо того чтобы полагаться на знания, заложенные людьми. В качестве генератора использовалась модель DeepSeek 671B. Ее дополнительно доучили на смеси массива CUDA-ядер и качественном коде из библиотек PyTorch, ATen, CUTLASS и примеров от NVIDIA. 🟡Что это дает на практике Для претрейна и файнтюна LLM большая часть времени GPU тратится именно на операции матричного умножения HGEMM. Если ускорить эти ядра на те самые 10–30%, которые обещает CUDA-L2, то весь процесс обучения становится заметно дешевле и быстрее. Поскольку CUDA-L2 обрабатывает около 1000 реальных размеров матриц, а не пару вручную настроенных, ускорение работает для самых разных архитектур. Это значит, что в тот же бюджет на GPU можно вместить больше токенов обучения, больше прогонов SFT или RLHF и т.д. 🟡Тесты HGEMM-ядра, созданные CUDA-L2, стабильно быстрее стандартных библиотек. В так называемом "оффлайн-сценарии" CUDA-L2 работает примерно на 17–22% быстрее, чем torch.matmul, cuBLAS и cuBLASLt. Она даже на 11% обгоняет cuBLASLt AutoTuning, который сам по себе уже использует поиск ядра. А в "серверном", сценарии, который имитирует реальный инференс с паузами между вызовами - разница еще больше: буст в 24–29% по сравнению с torch.matmul и cuBLAS. Простым рисёрчем проект не ограничен, в репозитории на Github авторы выложили оптимизированные ядра HGEMM A100 для 1000 конфигураций. В планах: расширение на архитектуры Ada Lovelace, Hopper, Blackwell, поддержка более плотных конфигураций и 32-битный HGEMM. 🟡Arxiv 🖥GitHub @ai_machinelearning_big_data #AI#ML#CUDA#DeepReinforce
Hashtags
🚀 SakanaAI представил Robust Agentic CUDA Kernel Optimization Это новый подход, где LLM помогает оптимизировать CUDA-ядра для PyTorch. • Слияние операций ускоряет forward/backward-проходы, результаты выше стандартных Torch-базлайнов • Полный пайплайн: PyTorch → генерация CUDA-кода → эволюционная оптимизация во время работы • Проверка через LLM: модели автоматически отмечают неправильные ядра (дает +30% к производительности) • robust-kbench — собственный бенчмарк, где измеряют не только скорость, но и корректность работы LLM Авторы пишут о 2.5x ускорении над PyTorch eager и даже 6x в линейных операциях❗️ Но большинство примеров — это тесты на слияние операций с неотюненной базой, так что цифры спорные. К тому же PyTorch 2.5 уже внедряет похожие оптимизации ), поэтому такие рекорды могут быстро обесцениться. Это интересный подход к самообучающимся AI-компиляторам, но заявленные ускорения стоит проверять на праактике. 🟢Github: https://github.com/SakanaAI/robust-kbench 🟢Статья: https://arxiv.org/abs/2509.14279 @ai_machinelearning_big_data #AI#CUDA#PyTorch#SakanaAI#LLM#Optimizatio
🌟Фреймворк **CUDA-L1** сам научился оптимизировать код для GPU — и добился в среднем **3.12× ускорения работы модели**, а в пике — **до 120×**. . Попросите любую LLM написать CUDA-код, и скорее всего, вы получите что-то, что либо не компилируется, либо работает мучительно медленно. Причина проста: качественного CUDA-кода в обучающих данных моделей почти не было. Чтобы исправить это досадное упущение, Deep Reinforce AI создали систему CUDA-L1, которая основана на трехэтапном пайплайне: сначала supervised-обучение для освоения основ, затем self-supervised для практики и, наконец, контрастное обучение с подкреплением, чтобы было все максимально быстро. 🟢На первом этапе система училась писать корректный и компилируемый CUDA-код. Для этого существующий код был аугментирован - создавались его вариации, чтобы повысить насмотренность модели. 🟢На втором этапе модель генерировала собственный CUDA-код, тестировала его и училась на работающих примерах, отсеивая неудачные. 🟢Самое интересное - третий этап. Обучаемой модели показывали несколько реализаций CUDA-ядер вместе с их показателями ускорения, например: «kernel_v1 дает ускорение 1.2x», «kernel_v2 — 2.8x», а «kernel_v3 — 1.5x». Затем задали 3 вопроса: 🟠Почему kernel_v2 настолько быстрее? 🟠Какая стратегия оптимизации сработает еще лучше? 🟠Напиши ядро, которое превзойдет их все. Таким образом, модель не гадает вслепую, а учится на конкретных примерах, анализируя причины разницы в производительности. 🟡Отдельная история - как победили reward hacking. После обучения выяснилось, что более 30% сгенерированных реализаций пытались сжульничать - создавали дополнительные CUDA-потоки, которые выполнялись асинхронно. Поскольку бенчмарк KernelBench отслеживал время только на основном потоке, код выглядел быстрее, чем был на самом деле, показывая фиктивное ускорение в 18 раз. Другие уловки состояли в манипуляции гиперпараметрами задачи (уменьшение batch_size или размерностей) и кеширование результатов вычислений. 🟡Пришлось строить многоуровневую защиту. Во-первых, в качестве "адвоката дьявола" взяли adversarial-чекер на базе DeepSeek-R1, который анализировал код на предмет эксплойтов с точностью обнаружения более 60%. Во-вторых, собрали базу данных из более чем 500 уникальных паттернов взлома, это повысило точность обнаружения на 25%. И в-третьих, применили математическое сглаживание и нормализацию наград, где любое подозрительное ускорение (от 1.5x для простых операций) дополнительно проверялось. 🟡После всех фильтров и проверок прогон на бенчмарке KernelBench оказался весьма позитивными. Система успешно сгенерировала рабочий код для 249 из 250 задач, причем в 240 случаях код оказался быстрее базовой реализации. Среднее ускорение по всем задачам составило 3.12 раза, максимальное - аж 120 раз. Медианное ускорение (50-й перцентиль) составило 1.42x, а 75-й перцентиль — 2.25x. Производительность по уровням сложности задач распределилась следующим образом: на простых операциях среднее ускорение составило 2.78x, на последовательностях операторов - 3.55x, а на сложных задачах вроде полных слоев трансформера - 2.96x. 🟡Самое важное - это переносимость оптимизаций. Код, оптимизированный на NVIDIA A100, был протестирован на других GPU. Результаты показали, что найденные паттерны оптимизации фундаментальны и работают на разных архитектурах. Среднее ускорение на H100 составило 2.39x (успешных ускорений 227 из 250), на L40 — 3.12x (228/248), а на потребительской RTX 3090 — 2.50x (213/242). ▶️ Пока веса и код не опубликованы, но в ожидании можно покрутить интерактивное демо и воспроизвести тесты из пейпера - в репозитории проекта есть фрагменты CUDA-кода с отдельными версиями для разных GPU. 📌Лицензирование: GPL-3.0 License. 🟡Страница проекта 🟡Arxiv 🟡Demo 🖥Github @ai_machinelearning_big_data #AI#ML#CUDA#DeepReinforce#ContrastiveRL