Efficiently Executing High-throughput Lightweight LLM Inference Applications on Heterogeneous Opportunistic GPU Clusters with Pervasive Context Management
Phung, Thain
The rise of Generative AI introduces a new class of HPC workloads that integrates lightweight LLMs with traditional high-throughput applications to accelerate scientific discovery. The current design of HPC clusters is inadequate to support this new class however, either incurring long wait times on static batch queues or repeatedly paying expensive LLM startup costs upon resource preemption. To circumvent both the long queues and high startup costs, we propose to "decouple" the LLM initialization context from the actual LLM inferences, and retain the context in GPUs until it is no longer needed, a technique we term "Pervasive Context Management". We transform a fact verification application to enable this technique, allowing it to reduce its execution time by 72.1% (from 3 hours to 48 minutes) using the same amount of GPUs, and scale opportunistically on 32.8% of all GPUs in the cluster and further reduce the execution time to 13 minutes.
academic
Эффективное выполнение высокопроизводительных приложений легковесного вывода LLM на гетерогенных оппортунистических GPU-кластерах с всеобъемлющим управлением контекстом
Развитие генеративного ИИ привело к появлению нового класса HPC-рабочих нагрузок, интегрирующих легковесные LLM с традиционными высокопроизводительными приложениями для ускорения научных открытий. Однако текущая архитектура HPC-кластеров неадекватно поддерживает такие рабочие нагрузки, приводя либо к длительному времени ожидания в статических очередях пакетной обработки, либо к повторяющимся дорогостоящим затратам на запуск LLM при перехвате ресурсов. Для преодоления этих проблем в работе предлагается "развязать" инициализацию контекста LLM от фактического вывода LLM и сохранять контекст на GPU до момента, когда он больше не требуется. Эта техника называется "всеобъемлющее управление контекстом" (Pervasive Context Management). На примере приложения проверки фактов эта техника сокращает время выполнения на 72,1% (с 3 часов до 48 минут) и позволяет оппортунистически масштабироваться на 32,8% GPU кластера, дополнительно сокращая время выполнения до 13 минут.
С быстрым развитием технологии больших языковых моделей (LLM) возникает новый класс HPC-рабочих нагрузок, интегрирующих легковесный вывод LLM (обычно с миллиардами параметров) в традиционные высокопроизводительные приложения. Такие приложения демонстрируют огромный потенциал в областях предсказания структуры белков, распределённых AI-ориентированных научных вычислений и других.
Ограничения статической модели распределения: Традиционная модель статического распределения GPU требует исключительного владения фиксированным размером GPU-батча, что приводит к серьёзному времени ожидания в очереди и недостаточной утилизации ресурсов кластера
Стоимость запуска при оппортунистическом распределении: Хотя оппортунистическое распределение ресурсов может использовать динамически доступные GPU-ресурсы, процесс запуска LLM (загрузка модели с миллиардами параметров из распределённой файловой системы на локальный диск, оперативную память хоста и, наконец, на GPU-память) является I/O-интенсивным и может занимать несколько минут
Стоимость перехвата ресурсов: Когда задача перехватывается, весь дорогостоящий процесс запуска должен быть переповторён на новых ресурсах, что часто приводит к тому, что стоимость запуска превышает время фактических вычислений
Фреймворки автоматического масштабирования: Разработаны на основе активных принципов, не подходят для пассивной оппортунистической HPC-среды
Традиционные техники отказоустойчивости: Такие как механизмы контрольных точек, могут защитить только прогресс вычислений, но не решают проблему стоимости загрузки модели
Предложена техника всеобъемлющего управления контекстом: Повышение инициализации контекста LLM до статуса первоклассной постоянной сущности в кластере, обеспечивающей переиспользование между несколькими задачами
Реализовано высокопроизводительное приложение проверки фактов на основе фреймворка Parsl-TaskVine: Демонстрация применения легковесных LLM в распределённых фреймворках, интенсивных по данным
Разработан метод быстрого преобразования приложений: Простая рефакторизация кода для поддержки контекстной осведомлённости приложениями
Подтверждено значительное повышение производительности: Сокращение времени выполнения на 72,1% при том же количестве GPU и оппортунистическое масштабирование на 32,8% GPU кластера
Данное исследование сосредоточено на высокопроизводительных приложениях легковесного вывода LLM, особенно на сценариях, требующих выполнения большого количества независимых задач вывода на гетерогенных оппортунистических GPU-кластерах. Входные данные представляют собой большое количество запросов вывода, выходные данные — результаты вывода, ограничения включают динамическую доступность GPU-ресурсов и непредсказуемый перехват.
Основная идея всеобъемлющего управления контекстом заключается в развязывании дорогостоящей инициализации контекста LLM от фактического выполнения вывода, превращая контекст в первоклассную сущность, которая может быть сохранена и переиспользована между узлами кластера.
Parsl: Предоставляет нативную для Python параллельную библиотеку, позволяющую пользователям выражать вычислительные требования через обычные функции Python
TaskVine: Низкоуровневый механизм выполнения рабочих процессов, интенсивных по данным, обрабатывающий отношения между задачами и оптимизацию планирования
Приложение проверки фактов (Prompt for Fact, PfF):
Цель: Найти оптимальный шаблон подсказки для заданного LLM, используемый в качестве верификатора фактов для проверки правильности произвольных утверждений
Набор данных: Тренировочные данные FEVER, содержащие 145 449 утверждений с метками SUPPORTED, REFUTED или NOT ENOUGH INFO
Версия Full-context показывает изменение времени выполнения только на 13,6% при различных размерах пакета, тогда как версия Partial-context при размере пакета 1 показывает скачок времени выполнения до 141 100 секунд, демонстрируя экстремальную чувствительность.
Spot-экземпляры облачных вычислений предоставляют аналогичный оппортунистический режим вычислений, но обычно обеспечивают 30-120 секунд предупреждения о перехвате, тогда как перехват в HPC-среде часто происходит мгновенно, делая традиционные механизмы сохранения состояния неэффективными.
Эволюция от традиционных менеджеров ресурсов к современным нативным для Python системам рабочих процессов, интеграция Parsl-TaskVine в данной работе представляет новое направление в поддержке совместного использования вычислительного контекста.
Статья цитирует 61 связанную работу, охватывающую важные исследования в нескольких областях, включая технологию LLM, планирование HPC и системы рабочих процессов, обеспечивая прочную теоретическую основу для исследования.
Общая оценка: Это высококачественная исследовательская работа, адресующая новые AI-рабочие нагрузки в HPC-среде. Авторы точно выявили практическую проблему, предложили инновационное решение и подтвердили эффективность метода посредством комплексных экспериментов. Хотя существуют определённые ограничения в диапазоне применения и теоретическом анализе, работа предоставляет ценный вклад в исследования и практику в соответствующих областях.