Две видеокарты одновременно: tensor parallelism для открытых весов
Tensor parallelism разбивает матричные вычисления так, чтобы каждая видеокарта обрабатывала часть операции параллельно. На практике веса модели и входные данные нарезаются по размерности и распределяются между несколькими GPU, потом результаты синхронизируются. Результат — модель на 70 млрд параметров влезает на две RTX 4090.
Инференс становится медленнее из-за межпроцессорной задержки: GPU обмениваются частичными результатами по PCIe или NVLink. На потребительской аппаратуре торможение составляет 15–25 %, но возможность вообще запустить большую модель для многих стоит этой цены.
Две техники: параллелизм и конвейер
Конкурирующий способ — pipeline parallelism, когда разные слои прогуляются на разных картах по очереди. Это медленнее на плотной нагрузке, но лучше для батчей разных запросов. Для домашних запусков с одним пользователем выбирают tensor parallelism.
Фреймворки типа vLLM и Text Generation WebUI уже встроили поддержку обеих техник. Конфигурация сводится к флагу при запуске, без правки кода модели. Это сделало параллелизм на нескольких GPU стандартным даже для новичков.
Смысл в том, что открытые модели переросли одну видеокарту, а цена решения упала. Кластер из двух-четырёх видеокарт уже конкурирует с облачными API по удобству, сохраняя приватность данных.