Вы находитесь на странице: 1из 30

NVIDIA GRID

Сергей Ковылов
Системный архитектор
• Технологии виртуализации NVIDIA GRID

План презентации • Новшества в NVIDIA GRID Software 5.0

• Политика лицензирования

• Основные аспекты проектирования решения

2
NVIDIA Confidential. Internal Use Only
РЕЖИМЫ ВИРТУАЛИЗАЦИИ ГРАФИКИ
NVIDIA NVIDIA vGPU ™ Проброс
Максимальное Максимальная
Guest OS Guest OS Guest OS
распределение утилизация
NVIDIA NVIDIA ресурса ресурса NVIDIA
Driver Driver Driver

VM VM VM

Плотность Производительность
vGPU vGPU vGPU
размещения системы

vGPU
Гипервизор Manager
Гипервизор

Сервер Графические и Сервер


Графические
расчетные
возможности
возможности
CPU GRID CPU GRID
& Quadro
3
NVIDIA Confidential. Internal Use Only
КАК РАБОТАЕТ NVIDIA GRID?
Virtual Virtual Virtual Virtual Virtual Virtual
Слой виртуализации

PC PC PC Workstation Workstation Workstation

NVIDIA Graphics NVIDIA Graphics NVIDIA Graphics NVIDIA Quadro NVIDIA Quadro NVIDIA Quadro
Driver Driver Driver Driver Driver Driver

Гипервизор GRID vGPU менеджер

Видеопамять Видеопамять Видеопамять Видеопамять Видеопамять Видеопамять


GPU

Планировщик – 3D, CE, NVENC, NVDEC


NVIDIA GPU
H.264 Encode
HW

CPUs Сервер
4
NVIDIA Confidential. Internal Use Only
ПРИНЦИП РАБОТЫ VGPU

Гипервизор
ВМ 1 ВМ 2
Guest OS Guest OS
Видеопамять ПО ПО
Выделяется VM при старте NVIDIA NVIDIA
GRID Virtual драйвер драйвер
GPU Manager
Каналы
Используются для передачи задач на GPU CPU MMU
Hypervisor
VM обращается к каналам через GPU Base
Address Register (BAR), которые изолированы NVIDIA GRID vGPU GPU BAR VM1 Bar VM2 Bar
CPU Memory Management Unit (MMU)
Каналы

GPU Engines
Видеопамять
Разделение между VM на уровне команд. Планировщик
VM1 FB
VM2 FB
3D CE NVENC NVDEC

5
NVIDIA Confidential. Internal Use Only
САМАЯ МОЩНАЯ
ВИРУТАЛЬНАЯ РАБОЧАЯ
СТАНЦИЯ В МИРЕ
NVIDIA Quadro vDWS

Поддержка всей линейки Tesla Pascal P4, P40, P100, NEW P6

CUDA для задач расчета

Аппаратный энкодер (NVENC) теперь и для Linux

Более 120 сертифицированных серверов

6
NVIDIA Confidential. Internal Use Only
OpenGL
Maxwell НЕТ Windows
DirectX

ПОДДЕРЖИВАЕМЫЕ
ТЕХНОЛОГИИ Pascal OpenGL CUDA* Windows
DirectX OpenCL* Linux
GRID SW5.0
Графические Расчетные Аппаратное
API API энкодирование

* Поддерживается только в профиле Quadro vDWS

7
NVIDIA Confidential. Internal Use Only
Maxwell Tesla M10 Tesla M6 Tesla M60
• 32ГБ памяти • 8ГБ памяти • 16ГБ памяти
• 4 low-end GPU • 1 high-end GPU • 2 high-end GPU
• 225W • 100W • 300W

ЛИНЕЙКА TESLA
ДЛЯ GRID Pascal Tesla P4 Tesla P6 Tesla P40
• 8ГБ памяти • 16ГБ памяти • 24ГБ памяти
• 1 low-end GPU • 1 high-end GPU • 1 high-end GPU
• 75W • 100W • 250W
GRID SW5.0
Tesla P100
• 16ГБ памяти
• 1 high-end GPU
• 300W
• Двойная точность

Высокая Блейд Высокая


плотность решения производительность

8
NVIDIA Confidential. Internal Use Only
Maxwell Virtual Apps Virtual PC Quadro vDWS
• Профили: • Профили: • Профили:
0,5/1/2/4/8 ГБ 0,5/1 ГБ 0,5/1/2/4/8 ГБ
• Разрешение: • Разрешение: • Разрешение:
1280x1024 2560x1600 2560x1600
4096х2160
• Кол-во мониторов: 1 • Кол-во мониторов: • Кол-во мониторов:

ПРОФИЛИ • FPS: 45
до 4

• FPS: 45
до 4

• FPS: 60
VGPU
Pascal Virtual Apps Virtual PC Quadro vDWS
GRID SW5.0 • Профили: • Профили: • Профили:
1/2/3/4/6/8/12/16/24 ГБ 1 ГБ 1/2/3/4/6/8/12/16/24 ГБ
• Разрешение: • Разрешение: • Разрешение:
1280x1024 2560x1600 2560x1600
4096х2160
• Кол-во мониторов: 1 • Кол-во мониторов: • Кол-во мониторов:
до 4 до 4

• FPS: 45 • FPS: 45 • FPS: 60

Виртуализация Виртуализация Виртуализация


приложений ПК рабочих станций

9
NVIDIA Confidential. Internal Use Only
BREADTH-FIRST DEPTH-FIRST
Размещение по принципу Размещение по принципу
«высокая производительность» «высокая плотность»

GPU1 GPU2 GPU1 GPU2

ПЛАНИРОВЩИК
РАЗМЕЩЕНИЯ Vm1 Vm2 Vm3 Vm3 Vm1 Vm2 Vm3 Vm3

VGPU
GPU3 GPU4 GPU3 GPU4

• Все GPU заполняются • Все GPU заполняются


равномерно последовательно

• Каждая новая VM • Каждая новая VM порождается


порождается на след. GPU на текущем GPU

• По достижению последнее • При заполнении GPU


GPU назначение происходит переход на след.
переходит на первое GPU свободный GPU 10
NVIDIA Confidential. Internal Use Only
Выделение по принципу
«ресурсы по времени и плотности»

Vm1

ПЛАНИРОВЩИК GPU

РАЗДЕЛЕНИЯ
РЕСУРСОВ Vm2

VGPU
(MAXWELL) FRL

• Ресурсы выделяются в зависимости от загрузки GPU

• FRL для обеспечения точного деления

11
NVIDIA Confidential. Internal Use Only
EQUAL SHARE FIXED SHARE
SCHEDULER SCHEDULER
Выделение по принципу Выделение по принципу
«ресурс в зависимости от кол-ва» «фиксированный ресурс»

1 вирт. машина = 1/1 ресурсов 1 вирт. машина = 1/3 ресурсов

ПЛАНИРОВЩИК Vm1 Vm1 IDLE IDLE

РАЗДЕЛЕНИЯ GPU GPU

РЕСУРСОВ 2 вирт. машины = 1/2 ресурсов каждая 2 вирт. машины = 1/3 ресурсов каждая

VGPU Vm1 Vm2 Vm1 Vm2 IDLE


(PASCAL) GPU GPU

3 вирт. машины = 1/3 ресурсов каждая 3 вирт. машины = 1/3 ресурсов каждая
GRID SW5.0
Vm1 Vm2 Vm3 Vm1 Vm2 Vm3

GPU GPU

Ресурсы VM уменьшаются Ресурсы VM всегда


по мере роста кол-ва VM в фиксированные в
системе зависимости от профиля
12
NVIDIA Confidential. Internal Use Only
Tesla Maxwell Tesla Pascal

• Требуется переключение из • Не требуется переключения из


режима Compute в режим режима Compute в режим
Graphics утилитой Graphics

ОСОБЕННОСТИ • Поддержка оперативной памяти • Поддержка оперативной


до 1ТБ памяти до 128ТБ

• Только один планировщик • Два планировщика ресурсов с


ресурсов поддержкой QoS

13
NVIDIA Confidential. Internal Use Only
GRID SW5.0
VMWARE 5.5/6.0/6.5 Passthrough, vGPU

CITRIX 6.5SP1/7.0/7.1/7.2 Passthrough, vGPU

HUAWEI UVP RC520 Passthrough, vGPU


ПОДДЕРЖИВАЕМЫЕ
ГИПЕРВИЗОРЫ NUTANIX AHV 5.5 Passthrough, vGPU

RHEL KVM 7.0/7.3 Passthrough

WinSRV 2016 Passthrough

Полное описание: http://docs.nvidia.com/grid/latest/product-support-matrix/index.html


14
NVIDIA Confidential. Internal Use Only
GRID SW4.0 GRID SW5.0

• Сервер лицензий требуется для • Сервер лицензий требуется


учета используемых лицензий для полноценной работы
виртуального GPU

ЛИЦЕНЗИРОВАНИЕ • Отсутствие лицензии приводит


• Отсутствие лицензии является
юридическим нарушением, но к ограничению
физически не ограничивает в функциональности:
полноценном использовании • До 4 FPS
GRID SW5.0 vGPU (было только • Разрешение 1024х768
уведомление)

• Сервер лицензий может быть • Есть возможность


только один использования двух серверов
лицензий для обеспечения
отказоустойчивости

15
NVIDIA Confidential. Internal Use Only
ЛИЦЕНЗИИ NVIDIA GRID
Постоянная лицензия
Неограничено по срокам использования

Лицензия по подписке

1 Год 1 Год 1 Год 1 Год

3 Года 1 Год

16
VMWARE
vROps

МОНИТОРИНГ

GRID SW5.0

CITRIX
XenDesktop
Director

17
nvidia-smi vgpu -p
# GPU vGPU process process sm mem enc dec
# Idx Id Id name % % % %
0 38127 1528 dwm.exe 0 0 0 0
1 37408 4232 DolphinVS.exe 32 25 0 0
1 257869 4432 FurMark.exe 16 12 0 0

nvidia-smi vgpu -es


# GPU vGPU Session Process Codec H V Average Average

МОНИТОРИНГ # Idx
1
Id
21211
Id
2
Id
2308
Type
H.264
Res
1920
Res
1080
FPS
424
Latency(us)
1977
1 21206 3 2424 H.264 1920 1080 0 0
1 22011 1 3676 H.264 1920 1080 374 1589

GRID SW5.0
nvidia-smi vgpu -s -i 0
GPU 0000:83:00.0
GRID M60-0B
GRID M60-0Q
GRID M60-1A
GRID M60-1B
GRID M60-1Q
GRID M60-2A
GRID M60-2Q
GRID M60-4A
GRID M60-4Q
GRID M60-8A
GRID M60-8Q
18
Основные аспекты
проектирования
решения

19
ПРОФИЛЬ РАБОЧИХ СТАНЦИЙ ЗАКАЗЧИКА
Конфигурация рабочей станции является начальной точкой расчета

Процессор i7-5775C / 3.3–3.7 Ghz / 4C / 8T vCPU


Память 8Gb DDR3 vMem

Графический NVIDIA Quadro K2200 vGPU


процессор
Диск 240 GB SSD IOPS

Windows 10
MS Office 2016 Сценарий использования может предполагать
IE/Chrome/Firefox одновременную работу нескольких приложений.
Siemens TeamCenter Меньший объём видеопамяти может влиять на
Siemens NX производительность САПР систем.
Dassault Catia

20
ЧАСТОТА И КОЛИЧЕСТВО ЯДЕР VCPU
Частота ядра Количество ядер
▪ Влияет на плотность виртуальных машин
▪ Влияет на производительность приложений на сервер
▪ Приложения, по большей части, ▪ Влияет на работоспособность нескольких
однопоточные и не могут использовать приложений одновременно
несколько ядер одновременно
▪ Позволяет сглаживать работу фоновых
▪ Для приложения важна частота ядра процессов ОС
▪ Должна быть сопоставима с частотой на ▪ Уменьшает кол-во дорогих контекстных
рабочей станции переключений процессов системы и
увеличивает отзывчивать

4
Приложение полностью потребляет Сторонние процессы не окажут
доступные возможности ядра vCPU сильного влияния на
и повышается интерактивность интерактивность рабочего
рабочего процесса процесса
vCPU

21
TURBO BOOST И ЕГО ПРИМЕНЕНИЕ
2.3Ghz
Базовая частота: 2.00 GHz
Кол-во ядер: 6
2Ghz
Boost: 3 шага
Частота в бусте: 2.3 Ghz

2.3Ghz
Кол-во ядер: 5
Boost: 3 шага
Частота в бусте: 2.3 Ghz 2Ghz

2.4Ghz
Кол-во ядер: 4
Boost: 4 шага
Частота в бусте: 2.4 Ghz
2Ghz
2.4Ghz
Кол-во ядер: 3
Boost: 4 шага
Частота в бусте: 2.4 Ghz 2Ghz

2.5Ghz Кол-во ядер: 2


Boost: 5 шагов
Частота в бусте: 2.5 Ghz
2Ghz 2.5Ghz
Кол-во ядер: 1
Boost: 5 шагов
Частота в бусте: 2.5 Ghz
2Ghz

22
VDI АГЕНТ ТАК ЖЕ СОЗДАЕТ НАГРУЗКУ
VDI агент часто упускается из расчетов
Рабочая станция

Ctxgfx.exe
Процесс захвата
экрана
20-30% vCPU

23
ПРИНЦИП РАЗМЕЩЕНИЯ ПРОФИЛЕЙ НА GPU
Tesla M60

GPU 0 GPU 1

Valid configuration with K240Q vGPUs on GPU 0, K260Q vGPUs on GPU 1:

M60-2Q M60-2Q M60-2Q M60-2Q M60-8Q M60-8Q

Valid configuration with K200 vGPUs on GPU 0, K240Q vGPUs on GPU 1:


M60 M60 M60 M60 M60 M60 M60 M60
1B 1B 1B 1B 1B 1B 1B 1B
M60-2A M60-2A M60-2A M60-2A

Invalid configuration with mixed vGPU types on GPU 0:


M60 M60 M60 M60 M60 M60 M60 M60
M60-2Q M60-2A M60-4Q 1B 1B 1B 1B 1B 1B 1B 1B

24
УТИЛИТЫ ДЛЯ МОНИТОРИНГА
nvidia-smi
[root@xenserver-vgx-test2 ~]# nvidia-smi
Консольная утилита Mon Mar 24 09:56:42 2014
+------------------------------------------------------+
| NVIDIA-SMI 331.62 Driver Version: 331.62 |
|-------------------------------+----------------------+----------------------+
C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe (Win) | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GRID K1 On | 0000:04:00.0 Off | N/A |
| N/A 31C P0 20W / 31W | 530MiB / 4095MiB | 61% Default |
Может отображать различные +-------------------------------+----------------------+----------------------+
| 1 GRID K1 On | 0000:05:00.0 Off | N/A |
характеристики | N/A 29C P0 19W / 31W | 270MiB / 4095MiB | 46% Default |
+-------------------------------+----------------------+----------------------+
| 2 GRID K1 On | 0000:06:00.0 Off | N/A |
| N/A 26C P0 15W / 31W | 270MiB / 4095MiB | 7% Default |
+-------------------------------+----------------------+----------------------+
| 3 GRID K1 On | 0000:07:00.0 Off | N/A |
Может отображать информацию | N/A 28C P0 19W / 31W | 270MiB / 4095MiB | 46% Default |
+-------------------------------+----------------------+----------------------+
по определяемым полям | 4 GRID K1
| N/A 26C P0
On
19W / 31W |
| 0000:86:00.0 Off |
270MiB / 4095MiB | 45%
N/A |
Default |
+-------------------------------+----------------------+----------------------+
| 5 GRID K1 On | 0000:87:00.0 Off | N/A |
| N/A 27C P0 15W / 31W | 10MiB / 4095MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 6 GRID K1 On | 0000:88:00.0 Off | N/A |
Для vGPU запускается в | N/A 33C P0 19W / 31W | 270MiB / 4095MiB | 53% Default |
гипервизоре +-------------------------------+----------------------+----------------------+
| 7 GRID K1 On | 0000:89:00.0 Off | N/A |
| N/A 32C P0 19W / 31W | 270MiB / 4095MiB | 46% Default |
+-------------------------------+----------------------+----------------------+
25
УТИЛИТЫ ДЛЯ МОНИТОРИНГА
CPU-Z
Графическая утилита

Отображает характеристики
системы

Детальная информация по
работе процессора

Помогает отслеживать
использование CPU Turbo Boost

26
УТИЛИТЫ ДЛЯ МОНИТОРИНГА
GPU Caps Viewer
Графическая утилита

Отображает характеристики
графической подсистемы

Характеристики по графическим
и расчетным API (CUDA, OpenCL,
OpenGL, Vulkan)

Набор тестов для оценки

27
УТИЛИТЫ ДЛЯ МОНИТОРИНГА
GPUprofiler
Графическая утилита

Позволяет определять интервал


и длительность измерения

Поддержка выгрузки
полученных данных. https://github.com/JeremyMain/GPUProfiler/releases

28
Ресурсы
www.nvidia.ru/vdi
✓ White papers
✓ Руководства по приложениям
✓ Руководства по внедрению
✓ Истории успеха
✓ Видео по GRID
✓ Инфографика
✓ Блоги

29
Спасибо за внимание