Как запустить локальную LLM на нескольких видеокартах
Раздел: Несколько GPU.
Несколько видеокарт можно использовать двумя принципиально разными способами: распределить одну модель между ними или запустить отдельные модели на разных картах. Первый вариант помогает разместить большой комплект весов; второй удобен, например, для одновременной работы чата и распознавания документов. Настройки этих сценариев различаются.
Одна модель на нескольких GPU
Движок должен явно поддерживать распределение выбранной архитектуры. В llama.cpp параметры распределения весов и режим разделения зависят от backend. В vLLM применяются степени параллелизма, в том числе tensor parallel и pipeline parallel, если они подходят модели. Одинаковое число GPU не делает эти механизмы эквивалентными.
Tensor split в llama.cpp задаёт относительное распределение между видимыми движку картами. Например, соотношения 1:1 и 30:70 описывают желаемое соотношение, но служебная память, кеш и особенности слоёв всё равно могут дать неравномерное фактическое потребление. Это не инструкция резервировать строго такой процент всей VRAM.
Несколько моделей на разных картах
В AI Server Manager откройте настройки первой модели, включите ручное размещение и выберите нужные GPU. Сохраните параметры и дождитесь готовности. Для следующей модели выберите другой свободный набор карт и другой порт. Не меняйте идентификаторы окружения вручную, если панель уже формирует изоляцию устройств.
Например, на сервере с четырьмя GPU можно планировать одну модель на картах 0 и 1, вторую — на карте 2, третью — на карте 3. Это схема размещения, а не гарантия, что любые три модели поместятся и смогут работать одновременно.
Автоматический и ручной режимы
Автоматический режим удобен для первого запуска и выбора незарезервированных панелью карт. Но учёт её собственных карточек не означает, что все процессы хоста известны планировщику. Майнер, другой контейнер или вручную запущенный Python-процесс тоже могут использовать GPU. Перед нагрузочным тестом проверьте мониторинг и процессы хоста.
Ручной режим нужен, когда важно воспроизводимое размещение. После выбора убедитесь, что настройки сохранились именно в ручном режиме, и повторно откройте окно запуска. Если интерфейс и журнал расходятся, не продолжайте запуск новых моделей до выяснения причины.
Как проверить реальное размещение
- Запишите номера карт в панели и соответствующие PCI-адреса.
- В консоли запуска найдите выбранные устройства и runtime mapping.
- Учтите, что внутри изолированного процесса физическая последняя карта сервера может называться устройством 0. Это нормально, если PCI-адрес совпадает.
- Сопоставьте рост памяти с мониторингом конкретных физических карт.
- Отправьте запрос в каждую модель и проверьте, что ответ даёт ожидаемый endpoint.
Почему больше карт не всегда быстрее
При разделении одной модели появляются пересылки данных и синхронизации. Скорость соединения, топология PCIe, размер запроса и выбранный параллелизм влияют на результат. Общая VRAM помогает вместимости, но не обещает пропорциональное ускорение. P2P и другие низкоуровневые возможности следует проверять отдельно; их нельзя считать включёнными только по наличию нескольких GPU.
Дальнейшие настройки — в руководстве по GPU. Различия способов масштабирования описаны в документации vLLM. Для сравнения сначала получите стабильный результат на одном устройстве, а затем меняйте только размещение.
О материале
Материал подготовлен с помощью ИИ с проверкой по пользовательскому руководству панели и указанным справочным источникам. Параметры и доступные функции зависят от версии установленной сборки; приведённые примеры не являются результатами отдельного бенчмарка.