microsoft/vattention
Динамическое управление памятью для обслуживания LLM без PagedAttention
Инференс⭐ 523C
Что это за инструмент
vAttention — это менеджер памяти для KV-cache в системах обслуживания LLM, использующий CUDA virtual memory APIs для динамического выделения физической памяти без изменения ядра внимания.
Зачем нужен
Инструмент решает проблему неэффективного использования памяти и накладных расходов PagedAttention, позволяя сохранять непрерывность виртуальной памяти при динамическом выделении физической. Это полезно для повышения производительности, особенно в сценариях, ограниченных этапом prefill, и позволяет использовать стандартные attention-ядра без их переписывания.
Что можно реализовать
- Оптимизация обслуживания LLM-моделей (семейства Yi и Llama) на GPU NVIDIA A100 с использованием Linux.
- Запуск нагрузочного тестирования (benchmarks) на статических и динамических трассировках для оценки пропускной способности.
- Интеграция с бэкендами вычислений FlashAttention и FlashInfer для ускорения prefill и decode этапов.
- Исследование альтернатив PagedAttention в системах типа Sarathi-Serve для улучшения метрик производительности.
Ключевые возможности
- Отказ от PagedAttention в пользу CUDA virtual memory APIs для более гибкого управления памятью.
- Поддержка работы с неизмененными (unmodified) attention kernels, что упрощает интеграцию.
- Улучшенная производительность в prefill-bound workload по сравнению с традиционными подходами.
- Гибкая конфигурация размеров страниц (64KB, 128KB, 256KB, 2MB) и поддержка sync-режимов.
- Встроенные скрипты для воспроизведения результатов исследований и сравнения с PagedAttention.
👤 Кому подойдёт: исследователи, разработчики систем обслуживания LLM, инженеры по оптимизации производительности GPU
Релизы
Релизы ещё не отслежены — появятся после ближайшего опроса.