hostprofi.ru
Подобрать хостинг
Термин·буква V

vRAM

краткое определение

vRAM (virtual RAM) — объём оперативной памяти, назначенный виртуальной машине гипервизором. Может совпадать с физически выделенной памятью или быть реализован через оверкоммит с балунингом и сжатием.

vRAM (virtual RAM) — виртуальная оперативная память, которую гипервизор выделяет конкретной виртуальной машине. Цифра в настройках ВМ (например, «4 ГБ RAM» у VPS) — это как раз vRAM. Фактическое потребление физической (pRAM) памяти хоста может отличаться в обе стороны.

vRAM и физическая память

В идеальной (гарантированной) конфигурации vRAM = pRAM: каждый гигабайт, выделенный ВМ, зарезервирован в физической памяти хоста. Это стандарт для bare-metal-серверов и premium VPS с гарантированными ресурсами.

При оверкоммите gRAM суммарно может превышать pRAM хоста. Гипервизор использует несколько техник для управления дефицитом физической памяти: Memory Ballooning — гипервизор «сдуть» unused страницы ВМ обратно в пул, KSM (Kernel Same-page Merging) — идентичные страницы памяти разных ВМ дедуплицируются (до 30–40% экономии при однотипных ОС), Transparent Page Sharing (TPS) — аналог KSM в VMware, swapping to disk — если ничего другого не помогло.

vRAM в контексте GPU-виртуализации

Термин vRAM также используется для виртуальной видеопамяти. NVIDIA vGPU (технология на базе SR-IOV) позволяет разделить GPU между несколькими ВМ, назначая каждой часть физической VRAM видеокарты. Например, GPU с 40 ГБ VRAM делится на 4 профиля по 10 ГБ. Каждая ВМ получает 10 ГБ vRAM для задач ML-инференса или виртуальных рабочих столов.

Как проверить реальное потребление vRAM

Внутри Linux-ВМ: free -h показывает vRAM, видимый гостевой ОС. cat /proc/meminfo — детальная разбивка. Из гипервизора (на примере KVM/QEMU): virsh dominfo VM_NAME — текущее потребление. В Proxmox — в веб-интерфейсе вкладка Summary каждой ВМ. Настороженность должна вызывать разница между выделенным vRAM и Used memory в панели провайдера — признак активного балунинга.

Как выбирать VPS по vRAM

Для WordPress достаточно 1 ГБ vRAM при правильной конфигурации PHP-FPM. Magento 2 требует минимум 2 ГБ, оптимально 4–8 ГБ. Node.js с SSR-рендерингом — от 2 ГБ. PostgreSQL с активной нагрузкой — от 4 ГБ (чем больше, тем лучше для shared_buffers). Правило: лучше купить меньше ядер, но больше RAM, чем наоборот — большинство веб-приложений упирается в память раньше, чем в CPU.

Оптимизация потребления vRAM

Снизить потребление vRAM помогают: отключение ненужных сервисов (systemctl disable), использование PHP-FPM вместо mod_php (FPM-воркеры убиваются при простое), настройка pm.max_children в PHP-FPM под реальную нагрузку, использование легковесных СУБД — SQLite для малых проектов вместо MySQL. Для мониторинга: htop, vmstat 1 (swapping), cat /proc/meminfo | grep Cached.

vRAM и swap на VPS

Swap на VPS — компенсация нехватки vRAM. На SSD-хостинге swap работает значительно быстрее, чем на HDD, но всё равно на порядок медленнее RAM. OpenVZ-контейнеры используют виртуальный swap (vzswap) — он хранится в памяти хоста, а не на диске, и ведёт себя как медленная RAM. Рекомендуемый размер swap: равный RAM при объёме до 4 ГБ, половина RAM при 4–16 ГБ. Если приложение постоянно использует swap — нужно больше оперативной памяти.

На виртуальных машинах с KVM swap располагается на виртуальном диске. Производительность случайного чтения: NVMe SSD — 300 000–1 000 000 IOPS vs RAM — миллионы IOPS. Принципиальная разница: swap никогда не должен использоваться в штатном режиме.

Другие термины