S-LoRA ускоряет масштабное использование LoRA адаптеров
- S-LoRA обеспечивает хранение и управление тысячами LoRA адаптеров в оперативной памяти и GPU.
- Система использует общий пул памяти для управления динамически меняющимися весами адаптеров и кэшированными тензорами.
- Внедрена новая стратегия параллельной обработки тензоров и оптимизированные CUDA ядра для ускорения вычислений.
- Эффективность S-LoRA в 4 раза выше по сравнению с существующими библиотеками, включая HuggingFace PEFT и vLLM.
- Разработка открывает двери для масштабного предоставления услуг индивидуализированной настройки моделей AI.
1000 адаптеров...
#S-LoRA #LoRA #CUDA
- S-LoRA обеспечивает хранение и управление тысячами LoRA адаптеров в оперативной памяти и GPU.
- Система использует общий пул памяти для управления динамически меняющимися весами адаптеров и кэшированными тензорами.
- Внедрена новая стратегия параллельной обработки тензоров и оптимизированные CUDA ядра для ускорения вычислений.
- Эффективность S-LoRA в 4 раза выше по сравнению с существующими библиотеками, включая HuggingFace PEFT и vLLM.
- Разработка открывает двери для масштабного предоставления услуг индивидуализированной настройки моделей AI.
1000 адаптеров...
#S-LoRA #LoRA #CUDA
KVQuant: контекстное окно в 10 млн. токенов
KVQuant - новый метод квантования активаций кеша ключевых значений, сокращающий потребление памяти при выводе.
Цель - сохранить точность при уменьшении потребления памяти, позволяя работать с большими моделями на слабом оборудовании.
Например: сервис LLaMA-7B на одном GPU A100-80GB позволяет работать с 1 миллионом токенов, и до 10 миллионов токенов на системе с 8 GPU.
#KVQuant #LLM #CUDA
KVQuant - новый метод квантования активаций кеша ключевых значений, сокращающий потребление памяти при выводе.
Цель - сохранить точность при уменьшении потребления памяти, позволяя работать с большими моделями на слабом оборудовании.
Например: сервис LLaMA-7B на одном GPU A100-80GB позволяет работать с 1 миллионом токенов, и до 10 миллионов токенов на системе с 8 GPU.
#KVQuant #LLM #CUDA
NVIDIA выпустила массовое обновление CUDA-библиотек
Более 400 специализированных библиотек ускоряют конкретные рабочие нагрузки в обработке данных, генеративном ИИ, рекомендательных системах и других сферах.
Новые библиотеки обеспечивают 10-кратное ускорение и снижение энергопотребления:
CPFD - 400x ускорение симуляций,
видеоконференции - 66x ускорение создания субтитров,
e-commerce - 33x ускорение рекомендательных систем.
Платформа NVIDIA Blackwell ускоряет обработку сжатых файлов в 18 раз.
За десятилетие эффективность вычислений NVIDIA AI выросла в 100 000 раз.
Многовекторность сингулярности.
Сумма технологий по Лему.
Т.е. не только процессоры становятся быстрее, но и библиотеки оптимизируются и Карпатый, вон GPT2 с нуля пересобирает на скорость (за 4 часа) https://www.youtube.com/watch?v=l8pRSuU81PU
#CUDA #Blackwell #NVidia
-------
@tsingular
Более 400 специализированных библиотек ускоряют конкретные рабочие нагрузки в обработке данных, генеративном ИИ, рекомендательных системах и других сферах.
Новые библиотеки обеспечивают 10-кратное ускорение и снижение энергопотребления:
CPFD - 400x ускорение симуляций,
видеоконференции - 66x ускорение создания субтитров,
e-commerce - 33x ускорение рекомендательных систем.
Платформа NVIDIA Blackwell ускоряет обработку сжатых файлов в 18 раз.
За десятилетие эффективность вычислений NVIDIA AI выросла в 100 000 раз.
Многовекторность сингулярности.
Сумма технологий по Лему.
Т.е. не только процессоры становятся быстрее, но и библиотеки оптимизируются и Карпатый, вон GPT2 с нуля пересобирает на скорость (за 4 часа) https://www.youtube.com/watch?v=l8pRSuU81PU
#CUDA #Blackwell #NVidia
-------
@tsingular
👍7
Forwarded from Анализ данных (Data analysis)
🚀 AI от Sakana AI пишет оптимизированный код для CUDA-ядрер для ускорения ИИ!
🔑 Основное:
AI CUDA Engineer — агентная система, которая автоматически создаёт высокооптимизированные CUDA-ядра, ускоряя операции машинного обучения в PyTorch в 10–100 раз.
CUDA-программирование сложное, требует глубоких знаний и часто кажется "алхимией". Эта система упрощает задачу, используя эволюционные алгоритмы и LLMs.
Уникальная идея — "Innovation Archive" (аналог "библиотеки навыков" из нашего проекта Voyager для Minecraft), где LLM сохраняет лучшие фрагменты кода, найденные в процессе эволюционного поиска.
Это идеальный пример AutoML: максимальная отдача от вычислительных ресурсов, делая ИИ быстрее и эффективнее.
Великолепная работа, Sakana AI!
Также интересно, что NVIDIA параллельно работает над схожими исследованиями по улучшению CUDA-ядер с помощью мощных LLM.
#AI #MachineLearning #CUDA #AutoML
▪Paper: https://pub.sakana.ai/ai-cuda-engineer/paper/
▪Kernel Archive Webpage: https://pub.sakana.ai/ai-cuda-engineer/
▪HuggingFace Dataset: https://huggingface.co/datasets/SakanaAI/AI-CUDA-Engineer-Archive
@data_analysis_ml
🔑 Основное:
AI CUDA Engineer — агентная система, которая автоматически создаёт высокооптимизированные CUDA-ядра, ускоряя операции машинного обучения в PyTorch в 10–100 раз.
CUDA-программирование сложное, требует глубоких знаний и часто кажется "алхимией". Эта система упрощает задачу, используя эволюционные алгоритмы и LLMs.
Уникальная идея — "Innovation Archive" (аналог "библиотеки навыков" из нашего проекта Voyager для Minecraft), где LLM сохраняет лучшие фрагменты кода, найденные в процессе эволюционного поиска.
Это идеальный пример AutoML: максимальная отдача от вычислительных ресурсов, делая ИИ быстрее и эффективнее.
Великолепная работа, Sakana AI!
Также интересно, что NVIDIA параллельно работает над схожими исследованиями по улучшению CUDA-ядер с помощью мощных LLM.
#AI #MachineLearning #CUDA #AutoML
▪Paper: https://pub.sakana.ai/ai-cuda-engineer/paper/
▪Kernel Archive Webpage: https://pub.sakana.ai/ai-cuda-engineer/
▪HuggingFace Dataset: https://huggingface.co/datasets/SakanaAI/AI-CUDA-Engineer-Archive
@data_analysis_ml
✍6
Forwarded from Machinelearning
Python уже несколько лет уверенно лидирует среди языков программирования, а теперь стал ещё ближе к железу. На GTC 2025 NVIDIA объявила о полноценной интеграции Python в свой CUDA-стек.
Это значит, что писать код для GPU можно будет напрямую на Python — без погружения в C++ или Fortran. Как подчеркнул Стивен Джонс, архитектор CUDA, цель — сделать инструмент естественным для Python-разработчиков: «Это не перевод синтаксиса C на Python. Все должно работать так, как привыкли разработчики».
Раньше CUDA требовала глубокого понимания низкоуровневых языков и это здорово ограничивало аудиторию. Сейчас, когда Python стал стандартом в ML и DS, NVIDIA открывает двери для миллионов программистов. По данным The Futurum Group, в 2023 году CUDA использовали 4 миллиона человек — теперь их число может резко вырасти.
Техническая часть такая же обширная, как и ожидания этого события профессиональным сообществом.
cuPyNumeric — аналог NumPy, который переносит вычисления с CPU на GPU буквально заменой импорта.Но главное — новый подход к параллельным вычислениям. Вместо ручного управления потоками, как в C++, NVIDIA предлагает модель CuTile, которая оперирует массивами, а не отдельными элементами. Это упрощает отладку и делает код читаемым, не жертвуя скоростью. По сути, разработчики получают высокоуровневую абстракцию, скрывающую сложности железа, но сохраняющую гибкость.
Пока CuTile доступен только для Python, но в планах — расширение для C++. Это часть стратегии NVIDIA по поддержке новых языков: Rust и Julia уже на походе.
Python-сообщество уже может экспериментировать — например, интегрировать CUDA-ядра в PyTorch или вызывать привычные библиотеки. Теперь даже те, кто никогда не писал на C++, смогут использовать всю мощь GPU — осталось проверить, как это скажется на скорости создания прекрасных LLM светлого будущего.
@ai_machinelearning_big_data
#AI #ML #Python #CUDA #NVIDIA
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍3🆒1
Forwarded from Machinelearning
Исследовательская группа 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.
@ai_machinelearning_big_data
#AI #ML #CUDA #DeepReinforce
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡6🔥5❤4 2 1
Внутри GPU NVidia: анатомия высокопроизоводительных математических умножений
Нашёл отличный материал по внутреннему устройству ядер матричного умножения на GPU — от железа до кода, бьющего производительность стандартных библиотек.
Автор проходит полный путь: архитектура памяти H100 → ассемблер GPU (PTX/SASS) → наивное ядро → оптимизированное ядро с тензорными блоками. Всё с картинками и кодом.
Ключевые полезные идеи:
Почему порядок обращения к памяти решает
Перестановка двух операторов (деление и остаток) в вычислении координат потока даёт падение производительности в 13 раз — с 3171 до 243 миллиардов операций в секунду. Без понимания иерархии памяти это выглядит как магия.
Перемешивание данных в общей памяти (swizzling)
Простая операция «исключающее ИЛИ» над адресами при загрузке данных устраняет конфликты банков памяти. Без этого — 8-кратное замедление при чтении столбцов. Автор разложил механизм до уровня отдельных битов.
Конвейер «производитель-потребитель» на уровне групп потоков
Одна группа из 128 потоков занимается только загрузкой данных через аппаратный ускоритель передачи (TMA), другая — только вычислениями на тензорных блоках. Координация через кольцевой буфер с барьерами в общей памяти. Это даёт перекрытие загрузки и вычислений.
Путь от 32 до 764 триллионов операций в секунду
Каждый шаг оптимизации с цифрами: тензорные блоки (+10×), увеличение размера плитки (+1.4×), конвейеризация (+1.2×), устойчивые ядра, кривая Гильберта для обхода плиток, кластеры блоков для обмена данными между процессорами. Итог — 107% от производительности стандартной библиотеки NVIDIA.
Кривая Гильберта для планирования вычислений
Вместо построчного обхода плиток выходной матрицы — обход по пространственно-заполняющей кривой. Соседние по времени плитки оказываются соседними в памяти → лучшее попадание в кэш второго уровня.
Материал закрывает разрыв между «знаю что такое GPU» и «понимаю как устроены ядра уровня продакшена». Автор обещает продолжение по архитектуре Blackwell и многочиповым ядрам.
#GPU #CUDA #обучение #H100 #NVidia
———
@tsingular
Нашёл отличный материал по внутреннему устройству ядер матричного умножения на GPU — от железа до кода, бьющего производительность стандартных библиотек.
Автор проходит полный путь: архитектура памяти H100 → ассемблер GPU (PTX/SASS) → наивное ядро → оптимизированное ядро с тензорными блоками. Всё с картинками и кодом.
Ключевые полезные идеи:
Почему порядок обращения к памяти решает
Перестановка двух операторов (деление и остаток) в вычислении координат потока даёт падение производительности в 13 раз — с 3171 до 243 миллиардов операций в секунду. Без понимания иерархии памяти это выглядит как магия.
Перемешивание данных в общей памяти (swizzling)
Простая операция «исключающее ИЛИ» над адресами при загрузке данных устраняет конфликты банков памяти. Без этого — 8-кратное замедление при чтении столбцов. Автор разложил механизм до уровня отдельных битов.
Конвейер «производитель-потребитель» на уровне групп потоков
Одна группа из 128 потоков занимается только загрузкой данных через аппаратный ускоритель передачи (TMA), другая — только вычислениями на тензорных блоках. Координация через кольцевой буфер с барьерами в общей памяти. Это даёт перекрытие загрузки и вычислений.
Путь от 32 до 764 триллионов операций в секунду
Каждый шаг оптимизации с цифрами: тензорные блоки (+10×), увеличение размера плитки (+1.4×), конвейеризация (+1.2×), устойчивые ядра, кривая Гильберта для обхода плиток, кластеры блоков для обмена данными между процессорами. Итог — 107% от производительности стандартной библиотеки NVIDIA.
Кривая Гильберта для планирования вычислений
Вместо построчного обхода плиток выходной матрицы — обход по пространственно-заполняющей кривой. Соседние по времени плитки оказываются соседними в памяти → лучшее попадание в кэш второго уровня.
Материал закрывает разрыв между «знаю что такое GPU» и «понимаю как устроены ядра уровня продакшена». Автор обещает продолжение по архитектуре Blackwell и многочиповым ядрам.
#GPU #CUDA #обучение #H100 #NVidia
———
@tsingular
🔥20❤4⚡2✍2