Расчет требуемой видеопамяти для LLM

При подборе видеокарты или AI-ускорителя одним из основных критериев является количество видеопамяти, которое необходимо для загрузки LLM-модели. В этом посте коротко опишу, как посчитать требуемый объем памяти.

Подбираем LLM модель

Для начала надо определиться с моделью. Итак, пусть

P – количество параметров модели (указываем в миллиардах).

Q – степень квантизации модели (4 / 8 и т.д.).

Формула расчетов

Основная формула расчетов будет такой.

The formula is simple:

Символ Значение
M Требуемый объем видеопамяти (в гигабайтах).
P Количество параметров в модели, например для 7B модели (7 миллиардов параметров) – будет 7.
4B 4 байта, выражает количество байт, используемых для одного параметра.
32 Так как в 4-х байтах содержится 32 бита.
Q Степень квантизации, количество бит, которые используются для загрузки модели. Например 16 бит, 8 бит, 4 бита.
1.2 Корректировка в  20% оверхеда при загрузки дополнительной информации в видеопамять.

 

Теперь попробуем посчитать на примере.

Пример расчетов памяти для LLM

Возьмем модель Llama-2-70B-Chat , с квантизацией на 16 бит. Эта модель состоит из 70 миллиардов параметров.

Сожрет памяти она довольно много, одного A100 80GB явно не хватит. А вот 2 x A100 80Gb должно хватитть для работы этой модели в 16-битном режиме.

Как уменьшить количество требуемой для LLM видеопамяти

Для этого собственно и используется кванизация. Квантизация — метод уменьшения размера памяти, используемой для нейросети, с помощью замены значений весов на значения меньшей точности. Например, float64 на float32. При этом обычно ускоряются вычисления, так как скорость проведения операция на числах с типами меньшей точности или специализированных типах прилично выше, чем на исходных. Нужно найти файл модели уже квантизованный в нужный нам размер. На HuggingFace есть совершенно замечательный персонаж TheBloke, который этим занимается. Вот тут расположен репозитарий квантизованных моделей Llama. Для примера возьмем 4-х битрную квантизацию llama-2-70b-chat.Q4_0.gguf и посчитаем, сколько памяти надо для нее.

 

Отлично, теперь нам нужно “всего” 42 Gb видеопамяти. Для этого хватит уже 2 x Nvidia L4 24Gb GPU. Уже гораздо лучше!

Материалы

Leave a Comment