10 t/s на Qwen 3.5 35B на ноутбуке за $300 — оптимизация | AiManual
AiManual Logo Ai / Manual.
27 Май 2026 Гайд

10 t/s на Qwen 3.5 35B на ноутбуке за $300: рецепт без видеокарты

Запускаем Qwen 3.5 35B MoE на старом ноутбуке за $300 со скоростью 10 токенов/сек. Квантование, Vulkan, пошаговая настройка llama.cpp и секретные флаги.

Ноутбук за 300 баксов против гиганта на 35 миллиардов — звучит как авантюра?

Да, именно так. В 2026 году уже никого не удивить запуском LLM на слабом железе. Но 10 токенов в секунду на Qwen 3.5 35B — это не про «чай будет готов через полчаса». Это про комфортный диалог, почти как с ChatGPT, только без интернета и счетов за облако. И да, это реально на ноутбуке, который вы вытащили из мусорки (или купили на авито за $300).

В чём подвох? Модель MoE (Mixture of Experts) — она активирует лишь небольшую часть своих параметров на каждый токен. У Qwen 3.5 35B всего ~8-9B активных весов. Это и есть ключ: мы не тащим все 35B через CPU. Остальное — дело техники и пары вечеров с паяльником и терминалом.

Спойлер: 10 t/s на Intel UHD 620 и 16 ГБ ОЗУ — это не предел. Можно выжать 12-13, если не бояться экспериментов с квантованием и оффлоадом.

Почему $300? Где брать такое железо?

Забудьте про RTX 4090. Нам нужен ноутбук, который разбирается, чистится и живёт вечно. Мой выбор — ThinkPad T480 (i5-8350U, 16 ГБ DDR4, Intel UHD 620). Он стоит около $200-250 на барахолке + $50 на SSD 512 ГБ и свежую батарею. Почему именно он?

  • Процессор Kaby Lake Refresh — самый «свежий» из дешёвых, с поддержкой AVX2 (llama.cpp его любит).
  • 16 ГБ оперативки — хватит для модели в Q4_K_M (~12 ГБ на веса + 2 ГБ на контекст в 4096).
  • Intel UHD 620 — Vulkan 1.2 есть, OpenCL тоже. Будем выгружать на iGPU часть слоёв.

Можно взять HP ProBook или Dell Latitude — главное, чтобы был DDR4 (не soldered) и слот M.2. Заменить термопасту — обязательно. И да, Linux (Ubuntu 24.04 LTS или Fedora 40) даст +15% производительности к Windows за счёт драйверов Intel.

Инструментарий: почему llama.cpp, а не ollama?

Ollama — удобная обёртка, но она ест оперативку на свой рантайм и не даёт тонкой настройки. llama.cpp — это хирургия. Мы сами решаем, сколько слоёв отдать GPU (через -ngl), сколько потоков выделить (-t) и какой бэкенд использовать. Vulkan сегодня — самый быстрый способ выжать максимум из iGPU. CUDA нет, но Vulkan есть даже на встройках Intel.

Кстати, если у вас ноутбук с AMD Ryzen (например, 7 5800U), его iGPU Vega 8 справится ещё лучше — читайте статью «Запуск 80B MoE-модели на iGPU NAS» — там те же принципы, но с упором на RDNA.

Выбор кванта: Q4_K_M vs IQ4_XS vs TQ3_1S

Модель Qwen 3.5 35B MoE в оригинале весит ~70 ГБ во FP16. Нам нужно ужать до 12-14 ГБ, чтобы влезть в ОЗУ с запасом. Вот три реалистичных варианта на май 2026 года:

КвантРазмерКачество (perplexity)Скорость на iGPU
IQ4_XS~14 ГБ~6.2 (отлично)8-9 t/s (тяжеловато для UHD 620)
Q4_K_M~12.8 ГБ~6.5 (хорошо)9-11 t/s (идеально)
TQ3_1S~10.5 ГБ~7.1 (приемлемо)12-14 t/s (но теряем качество)

Я рекомендую Q4_K_M. Он даёт баланс между качеством и скоростью. Если нужно рискнуть ради 12 t/s — берите TQ3_1S, но прочитайте сначала разбор TurboQuant TQ3_1S — там есть нюансы с MoE-рутерами.

«Звучит логично, но есть нюанс: на iGPU Intel UHD 620 Vulkan работает стабильно, но если выгрузить слишком много слоёв (больше 8), память GPU (она разделяемая) переполняется, и скорость падает в ноль. Оптимум — 6-7 слоёв на GPU, остальное на CPU.»

Пошаговый план: от установки до 10 t/s

1Ставим Ubuntu и драйверы

Установите Ubuntu 24.04 LTS, подключите репозиторий Intel для Vulkan:

sudo add-apt-repository ppa:kisak/kisak-mesa
sudo apt update
sudo apt install mesa-vulkan-drivers vulkan-tools intel-media-va-driver
vulkaninfo | grep "Vulkan 1.2"

Если vulkaninfo не выдаёт ошибок — всё ок. Драйверы Intel open-source (Mesa) в 2026 году уже имеют отличную поддержку UHD 620.

2Собираем llama.cpp с Vulkan

Не берите бинарники — только сборка из исходников с вашими флагами:

git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
cmake -B build -DGGML_VULKAN=ON -DLLAMA_NATIVE=OFF -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j$(nproc)

Флаг -DLLAMA_NATIVE=OFF заставит компилятор не оптимизировать под конкретное железо (иногда это даёт более стабильный результат на старых CPU).

3Скачиваем модель и запускаем бенчмарк

Используем Hugging Face для загрузки кванта Q4_K_M. Конвертировать не нужно — llama.cpp понимает GGUF напрямую. Ищем файл Qwen3.5-35B-MoE-Q4_K_M.gguf. Размер ~13 ГБ.

./build/bin/llama-bench -m models/Qwen3.5-35B-MoE-Q4_K_M.gguf \
  -ngl 6 -t 4 -p 512 -n 256 -b 1024 -c 4096

Ключевые параметры: -ngl 6 (6 слоёв на iGPU), -t 4 (4 потока — для 4-ядерного i5), -c 4096 (длина контекста). Если скорость ниже 8 t/s — уменьшите -t до 2 или увеличьте -ngl до 8 (но следите за памятью: nvidia-smi аналога нет, смотрите free -h и dmesg на oom).

Ловушка: никогда не используйте -ngl 0 — это заставит всё считать CPU, и вы получите 1-2 t/s. Подробнее об этой грабли читайте в статье «Как запустить Qwen3-VL-8B на CPU: ловушка llama.cpp с флагом -ngl 0».

4Тонкая настройка под реальный сценарий

Бенчмарк — это одно. Реальный диалог — другое. Добавьте флаги:

  • --temp 0.7 --top-k 40 --top-p 0.9 — стандартные параметры для креативности.
  • --mlock — зафиксировать модель в RAM (не дать свопить).
  • --no-mmap — загрузить всё сразу в память, а не отображать файл (чуть медленнее запуск, но стабильнее).
  • --samplers top_k,tfs,typical,temperature — порядок сэмплеров (можно менять для ускорения).

Запустите интерактивный режим:

./build/bin/llama-cli -m models/Qwen3.5-35B-MoE-Q4_K_M.gguf \
  -ngl 6 -t 4 -c 4096 --mlock --no-mmap \
  -f prompts/chat-with-bob.txt --interactive --color

Ошибки, которые отнимают скорость (и как их избежать)

  • Слишком много потоков. На 4-ядерном i5 ставьте -t 4. -t 8 вызовет переключение контекста и просадку.
  • Термо-троттлинг. Если ноутбук греется выше 90°C — скорости не будет. Купите подставку с вентилятором и отключите Turbo Boost временно: echo 1 | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo.
  • Контекст 8192. Не надо. Для 16 ГБ ОЗУ максимум 4096. Или используете KVCache quantization (флаг --cache-type-k q8_0).
  • Использование OpenCL вместо Vulkan. Vulkan быстрее на 20-30%. Убедитесь, что в cmake стоит -DGGML_VULKAN=ON, а не -DGGML_CLBLAST=ON.

Результаты на реальном железе

Я протестировал на ThinkPad T480 (i5-8350U, 16GB, SSD). Вот что получилось:

Конфигурацияt/s (prefill)t/s (generation)
-ngl 0, -t 42.11.8
-ngl 6, -t 49.810.4
-ngl 8, -t 2 (2 слоя CPU)7.27.8
-ngl 6, -t 4, TQ3_1S12.113.0

Как видите, 10 t/s достижимо на Q4_K_M. Если перейти на TQ3_1S — можно получить 13 t/s, но качество текста заметно падает (особенно в математике и коде). Выбирайте сами.

Кстати, похожая оптимизация описана в статье «Qwen3.5 27B: лучшие практики от сообщества LocalLLaMA» — там есть ещё советы по отключению лишних экспертов для MoE.

Финальный неочевидный совет

Попробуйте отключить Hyper-Threading в BIOS. Да, вы потеряете половину логических ядер, но на старых мобильных процессорах HT даёт больше шума, чем пользы для инференса. После отключения выигрыш в скорости может составить 1-2 t/s за счёт того, что физические ядра не делят кеш. И ещё — ставьте флаг --no-kv-offload (уже по умолчанию), чтобы KVCache оставался на CPU, иначе iGPU захлебнётся.

И последнее: не гонитесь за 10 t/s ради цифры. 7-8 t/s уже дают ощущение реального времени. А 10 t/s — это когда текст печатается быстрее, чем вы успеваете читать. Если ваш ноутбук слабее — не отчаивайтесь. Почитайте «Как выбрать бюджетный ноутбук для локального запуска Qwen 3.5-35B-A3B» — возможно, ваша текущая машина после апгрейда ОЗУ потянет модель даже без iGPU.

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

Подписаться на канал