У меня возникла идея проверить насколько различается скорость инференса LLM моделей не только в сравнении CPU и GPU, но и между младшими моделями со старшими при обработке без использования GPU.
Для сравнения я выбрал модель gpt-oss:20b (размер модели 14Гб) и gpt-oss:120b (размер модели 65Гб). Запустил тест моделей я на компьютере с процессором Intel Core I9 14900K и 192Гб оперативной памяти.
Для теста я задал каверзную задачку:
Реши логическую задачу:
На улице стоят пять складов.
Каменщик работает в зеленом складе.
У портного есть леопард.
На желтом складе едят котлету.
Электрик ест хлеб.
Желтый склад стоит сразу справа от синего склада.
Тот, кто пьет коньяк разводит пуму.
В белом складе пьют вино.
В центральном складе едят пельмени.
Плотник работает на первом складе.
Сосед того, кто пьет водку, держит медведя.
На складе по соседству с тем, в котором держат тигра, пьют вино.
Тот, кто пьет виски, ест макароны.
Программист пьет ром.
Плотник работает рядом с красным складом.
Кто ест пиццу? Кто держит крокодила?
И пациентом стала модель gpt-oss:20b (может быть запущена на ПК с 32Гб оперативки). В результате мне пришлось ждать почти 35 минут, я даже в магазин успел съездить. Но спустя эти 35 минут я получил неверный ответ, скрины ниже.


Далее я сказал что результат не верен, следующий ответ она думала 23 минуты, но увы, так же неправильно.

но уже даже составила таблицу.

В итоге потратив час на модель gpt-oss:20b и не добившись правильного ответа со второй попытки, я приступил к тесту gpt-oss:120b чисто на CPU, памяти для запуска потребовалось 65Гб, немало и простой ПК даже с 64Гб не сможет запустить эту модель к сожалению. И я приготовился ждать долго. Однако мой шаблон был сломан, спустя всего 17 минут, gpt-oss:120b выдала верный результат.


Таким образом получилось что модель объемом 65 гигабайт, решила задачу правильно в 2 раза быстрей чем ее младшая модель.
Но результат был еще интересней когда я запустил эту же задачу но уже используя GPU RTX4090 48Gb, в моей системе их 2 штуки с общим объемом VRAM 96Гб.
Так вот gpt-oss:20b решила эту проблему примерно за 3 минуты, но самое главное правильно используя только одну видеокарту.
Далее я запустил тест модели gpt-oss:120b на GPU, правильное решение заняло всего полторы минуты.
Что мы получили в итоге:
модели с малым числом параметров обучения занимают немного места в памяти и могут запускаться даже на условно простых ПК только на CPU, но, они при этом выдают неправильные результаты и требуют очень много времени (более 30 минут на первый запрос). Модели с большим числом параметров обучения (gpt-oss:120b) выдают верный результат всего за 17 минут та подобной задаче.
А вот при запуске моделей на GPU, gpt-oss:20b выдала правильный ответ за 3 минуты используя только один ускоритель, а модель gpt-oss:120b выдала верный результат за полторы минуты, но уже используя 2 GPU.
На этом этапе изучения работы LLM я сделал для себя и возможно для вас интересное наблюдение. А именно, скорость работы с GPU и без GPU различается в десятки раз, при чем модели с низким числом параметров не дают правильный ответ.
Но при использовании GPU в моем тесте младшая модель решила задачу правильно с первого раза за 3 минуты. Но старшая модель, объемом более чем 4 раза, решила задачу всего за полторы минуты.
PS. Получается что работа LLM зависит как от объема, так и источника обработки. И CPU инференс LLM сильно проигрыват.
Возможно более простые задачи небольшие LLM решают с хорошей точностью даже на обычных ноутбуках с достаточным объемом памяти. Но вот чуть более сложные задачи я думаю без использования GPU сложно решить.
Буду рад услышать от читателей интересные идеи по тестированию различных моделей на обычных ПК и их сравнение с результатами обработки на мощных системах.
Автор: softel


