Upload
dangnhi
View
226
Download
4
Embed Size (px)
Citation preview
1
NVIDIA Tesla Update
Supercomputing’12 Sumit Gupta
General Manager
Tesla Accelerated Computing
От революции в суперкомпьютерах
к прорыву в решении реальных проблем Дмитрий Конягин
2
Гибридные вычисления
CPU Создан для
последовательных задач
GPU ускоритель Создан для
параллельных задач
10x производительность 5x энергоэффективность
3
0
5
10
15
20
25
30
35
40
2007 2008 2009 2010 2011 2012
CUDA обеспечивает 19% всех FLOPS (благодаря системам с GPU)
Обш
ая п
роизв
одите
льность
(PFLO
PS)
NVIDIA Kepler
NVIDIA Fermi
Intel Xeon Phi
IBM Cell
Other
4
Ключевой элемент научных вычислений
1 Tesla K20X GPU 90 нсек/день
12 Sandy Bridge CPUs 41 нсек/день
AMBER Molecular Dynamics Simulation
JAC NVE Benchmark
5
2008 2013
4,000 Научных работ
150K Скачиваний CUDA
60 Курсов в
университетах
100M GPU на базе CUDA
1 Суперкомпьютер
430M GPU на базе CUDA
50 Суперкомпьютеров
1.6M Скачиваний CUDA
640 Курсов в
университетах
37,000 Научных работ
Экспоненциальный рост вычислений на GPU
6
Приложения ускоряемые GPU
7
Ведущие приложения теперь с поддержкой GPU
AMBER
NAMD
GROMACS
CHARMM
LAMMPS DL_POLY
Non-GPU Apps
Молекулярная динамика
Adobe CS
Apple Final Cut
Sony Vegas Pro
Avid Media Composer
Autodesk 3dsMax
Other GPU Apps
Non-GPU Apps
Создание контента
Gaussian GAMESS
NWChem
CP2K Quantum Espresso
Non-GPU Apps
Квантовая химия
ANSYS
Simulia Abaqus
MSC Nastran Altair
Radioss
Non-GPU Apps
Инженерный анализ
Рыночная доля
приложений в сегменте
8
207 приложений с поддержкой GPU www.nvidia.com/appscatalog
GPU как основа нейронных сетей
2012
Датацентр Google
Теперь
Лаборатория ИИ NVIDIA & Stanford
1000 CPU серверов
Нейронная сеть с 1.7 млрд
параметров
16 серверов на базе GPU
Нейронная сеть с 11.2 млрд
параметров
В 6.5 раз больше нейронная сеть
Ведущие лаборатории по разработке алгоритмов ИИ используют GPU
Web поиск
Распознавание речи
Распознавание объектов
Языковой перевод
Автомобили без водителя
Prof. Geoffrey Hinton,
Work being integrated into
Google Brain
Prof. Yann LeCun
Leading Expert in Optical
Character Recognition
Prof. Jürgen Schmidhuber
Director of Award Winning AI Lab
Prof. Andrew Ng
Director of Stanford AI Lab
Founder of Google Brain
Nuance: улучшение качества распознавани речи с GPU
Мировой лидер в распознавании речи 12 млдр звонков
25 млн автомобилей
Тренировка моделей больших сетей
GPU сокращает время обучения с недель до дней
GPU значительно сокращают время обучения на больших объемах данных, позволяя нам исследовать новые алгоритмы и техники обучения
“
” Vlad Sejnoha CTO, Nuance
За пределами HPC GPU ускоряют аналитику Big Data
Анализ Twitter
Shazam
Поиск по аудио Поиск по
изображениям
Энкодирование
видео в реальном
времени
ARM: самый быстро растущий CPU
1993 1998 2003 2008 2013 0%
20%
40%
80%
100%
Ры
ночная д
оля п
роцессоров
Отгрузки x86 и Cortex процессоров
60%
0
1
2
4
5
3
Отгр
узк
и п
роцессоров (М
лрд)
Source: Mercury Research, ARM, Internal estimates
Новое поколение набора для разработки CUDA для ARM
Tegra 3 + GK208 + CUDA 5.x + OpenGL 4.3
Поддержка GPU на базе Kepler
SM35: поддержка динамического параллелизма и др
2 SMX, 384 CUDA ядер
Функционал решения Logan SoC
Более энергоэффективное интегрированное решение
Стандартный форм-фактор
SECO mITX GPU DevKit
GeForce GT 640 PCI-e card mITX GPU DevKit
Note 1: SECO mITX GPU DevKit does not ship with PCI-e GPU Note 2: GT 640 is not yet announced
CUDA 5.5 полная поддержка для ARM
Особенности CUDA 5.5
Поддержка платформы ARM
Нативная компиляция под ARM
Оптимизация под MPI
Hyper-Q для всех дистибутивов Linux
Приориетизация задач MPI
Анализ производительности
Пошаговая оптимизация
ARM или x86 CPU Создан для
последовательных задач
GPU ускоритель Создан для
параллельных задач
Доступно сейчас http://developer.nvidia.com/cuda-toolkit
От умных роботов до энергоэффективных СК
Автономные роботы На 35% выше
энергоэффективность
Экосистемам HPC готовится к ARM
0
0.05
0.1
0.15
0.2
0.25
ARM+GPU 2x CPU (x86)
HOOMD-Blue (LJ-Liquid) Time Steps per
sec/Watt
0
0.5
1
1.5
2
2.5
3
3.5
4
ARM+GPU 2x CPU (x86)
AMBER (Cellulose NPT)
Ns/day
Приложения портируемые
на ARM + GPU
ACEMD
AMBER
GROMACS
HOOMD-Blue
NAMD
NWChem
OpenMM
HOOMD-blue (LJ-liquid (N=64000), GeForce GT 640 + Tegra3 vs. 2x E5-2667 (12 Sandy Bridge cores)
AMBER (Cellulose NPT (408,609 atoms), GeForce GTX 680 + Tegra3 vs. 2x E5-2670 (16 Sandy Bridge cores)
3 способа программировать на GPU
Библиотеки BLAS, FFT, MAGMA & CULA
LAPACK, …
Директивы OpenACC
CUDA Расширения
C/C++/Fortran
Приложения
“copy-paste”
ускорение
Максимальная
производительность
Простое ускорение
приложение
Библиотеки с поддержкой GPU “Copy-past” ускорение для ваших приложений
Линейная алгебра FFT, BLAS,
SPARSE, Matrix
Численные методы RAND, Statistics
Структуры данных Sort, Scan, Zero Sum
Обработка изображ. Image & Video
NVIDIA
cuFFT,
cuBLAS,
cuSPARSE
NVIDIA
Math Lib NVIDIA cuRAND
NVIDIA
NPP
NVIDIA
Video
Encode
GPU AI –
Board
Games
GPU AI –
Path Finding
OpenACC: открытость, простота, портируемость
• Открытый стандарт
• Простые директивы компилятору
• Портируемость на GPU и Xeon Phi
main() {
…
<serial code>
…
#pragma acc kernels
{
<compute intensive code>
}
…
}
Директивы компилятору
CAM-SE Climate В 6 раз быстрее на GPU
Основное ядро: 50% времени исполнения
Доступно от:
Сейсморазведка
EMGS
Эффективность ДВС
National Renewable
Energy Lab
Вычислительная
химия
Blue Waters @ NCSA
Моделирование
климата
Swiss National
Weather Agency
COSMO (Physics)
OpenACC ускоряет решение научных проблем
4.2x
GAMESS CCSD
3.1x
S3D
2.2x
ELAN
3.2x Performance Speed-up:
2x AMD6274 CPUs vs 1 AMD6274 CPU + 1 Tesla K20X
void saxpy_serial(int n, float a, float *x, float *y)
{
for (int i = 0; i < n; ++i)
y[i] = a*x[i] + y[i];
}
//Invoke serial SAXPY kernel
saxpy_serial(n, 2.0, x, y);
__global__ void saxpy_parallel(int n, float a, float *x, float *y)
{
int i = blockIdx.x*blockDim.x + threadIdx.x;
if (i < n) y[i] = a*x[i] + y[i];
}
//Invoke parallel SAXPY kernel w/ 256 threads/blk
int nblocks = (n + 255) / 256;
saxpy_parallel<<<nblocks, 256>>>(n, 2.0, x, y);
Программирование GPU на C, C++, Fortran, Python
Стандартный C код Параллельный C код
Самый простой способ изучить CUDA
50K Регистраций
127 Стран
$$
Учитесь у мэтров
Где угодно, когда удобно
Бесплатно!
Общайтесь с сообществом
Роадмап: в ритме GPU
2012 2014 2008 2010
DP G
FLO
PS p
er
Watt
Kepler
Tesla
Fermi
Maxwell
Volta Stacked DRAM
Unified Virtual Memory
Dynamic Parallelism
FP64
CUDA
32
16
8
4
2
1
0.5
Конкуренция
Если это так просто, почему до сих пор
нет тысяч приложений?
GPU: всегда быстрее, чем Xeon Phi
Source: Tokyo Tech Presentation- Application Performances on Many-core Processors, Xeon Phi versus Kepler GPU
Tokyo Tech CFD Code Benchmark
Независимые результаты от пользователей Xeon Phi GPU в 2-20 раз быстрее, чем оптимизированный код на Xeon Phi
Tokyo Tech
20X
Univ. of Warwick
4X
CGGVeritas
2X
NREL
1.5X
C’t Mag
1.6X
Georgia Tech
2X
NVIDIA Tesla Update Supercomputing’12
Sumit Gupta General Manager
Tesla Accelerated Computing
Спасибо!