Антон Джораев, nvidia - old.kpfu.ruold.kpfu.ru/inf/bin_files/dzhoraev-nvidia!28.pdf ·...

Post on 14-Apr-2018

226 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Антон Джораев, NVIDIA

2

GeForce

Quadro

Tegra

Tesla

4

Вычисления на GPU

Вычисления на GPU

CPU + GPU

Гибридная архитектура

8 ядер

Обзор развития архитектур

0

50

100

150

200

250

2007 2008 2009 2010 2011 2012

Пропускная способность памяти, ГБ/сек

T10

Nehalem

3 GHz Westmere

3 GHz

8-core Sandy

Bridge

3 GHz

T20

T20A

0

200

400

600

800

1000

1200

2007 2008 2009 2010 2011 2012

Пиковая производительность в двойной точности, ГФлопс

Nehalem

3 GHz

Westmere

3 GHz

T20

T20A

T10

8-core

Sandy Bridge

3 GHz

1 ТФлопс один. точность

4 ГБ

0,5 ТФлопс дв.точн.

ECC

L1, L2 кэш

NVIDIA GPU (ECC off) x86 CPU Double Precision: NVIDIA GPU Double Precision: x86 CPU

Задачи для суперкомпьютеров

Проектирование газодинамика

Разработка РЭА Проектирование антенн

Финансы Биржевая торговля

Прогнозирование погоды Физика атмосферы

Разработка лекарств МД

Медицинская визуализация КТ и МРТ

Астрофизика Происхождение вселенной

Разведка нефти и газа Обработка сейсмических данных

8

Науке нужны на порядки более мощные системы

1,000,000,000

1,000,000

1,000

1

ГФлоп/с

1982 1997 2003 2006 2010 2012

Эстрогеновый рецептор 36 тыс. атомов

F1-ATPase 327 тыс. атомов

Рибосома 2.7 млн. атомов

Хроматофор 50 млн. атомов

Апротинин 3 тыс. атомов

Бактерия Миллиарды атомов

1 ЭФлоп/c

1 ПФлоп/с

2 наносекунды жизни за 8 месяцев вычислений

9

Программно-аппаратная архитектура для

параллельных вычислений

CUDA для параллельных вычислений

Среда разработки

Документация, сотни примеров

Компилятор С/C++, Фортран (PGI)

Поддержка OpenCL и DirectCompute

Библиотеки

FFT

BLAS

LAPACK

MAGMA

Image processing

Video processing

Signal processing

Computer Vision

Sparse Matrix

Random Generator

ATI’s Compute

“Solution”

• 2500+ научных работ

• 1500+ приложений

• 350+ Университетов преподающих CUDA

CUDA. Мировое признание.

• 200+ млн. GPU c CUDA

• 100,000+ разработчиков

4 in Japanese, 3 in English, 2 in Chinese, 1 in Russian)

TeslaTM

Высокопроизводительные вычисления

Quadro®

Конструирование и дизайн

GeForce®

Развлечения

Универсальность архитектуры 200+ млн. GPU поддерживающих CUDA по всему миру

Системы Tesla нового поколения (Fermi)

Tesla S2050 / S2070

1U System Tesla C2050 / C2070

Tesla Personal

Supercomputer (4 Tesla C20x0)

GPUs 4 Tesla GPUs 1 Tesla GPU 4 Tesla GPUs

Произв. двойной точн. 2,06 ТФлопс 515 ГФлопс 2,06 ТФлопс

Произв. один. точн. 4,12 ТФлопс 1,03 ТФлопс 4,12 ТФлопс

Память 3 или 6 ГБ / GPU 3 или 6 ГБ 3 или 6 ГБ / GPU

Защита данных ECC ECC ECC

GPU серверы стали мейнстримом

®

Tesla S870

Декабрь 2007

Tesla S1070 / M1060

2008-2009

Tesla M2050 / M2070

2010

18

В 8 раз лучше результат по Linpack

80,1

656

0

150

300

450

600

750

CPUServer

GPU-CPUServer

Произв., ГФлопс

11

60

0

10

20

30

40

50

60

70

CPUServer

GPU-CPUServer

ГФлопс / $K

146

656

0

200

400

600

800

CPUServer

GPU-CPUServer

ГФлопс / КВт

CPU 1U Server: 2x Intel Xeon X5550 (Nehalem) 2.66 GHz, 48 GB memory, $7K, 0.55 kw

GPU-CPU 1U Server: 2x Tesla C2050 + 2x Intel Xeon X5550, 48 GB memory, $11K, 1.0 kw

Мощнейшие суперкомпьютеры мира

Китай Tianjin National

Supercomputing Center

Tianhe-1A

Япония Tokyo Institute of

Technology

Tsubame 2.0

США Oak Ridge National Lab

Jaguar Официально объявлено

о намерении использовать Tesla

Россия Московский

Государственный

Университет

Ломоносов

#1

Энергоэффективность

7,168 Tesla + 14,336 CPU

4.04 МВт

50,000 x86 CPUs

12.7 МВт

CPU-система Гибридная CPU-GPU система

Китай: технологический прорыв

№ Вендор Архитектура Год Linpack Пик

1 国防科大 Intel X5670 + NVIDIA Tesla M2050 2010 2507 4701

2 曙光 Intel X5650 + NVIDIA Tesla C2050 2010 1271 2984

3 中科院过程所 Intel E5520 + NVIDIA Tesla C2050 2010 207 1138

4 曙光 AMD Barcelona 2008 180 233

5 联想 Intel E5450 2008 106 293

6 曙光 Intel X5650 + NVIDIA Tesla C2050 2010 76 141

7 曙光 Intel X5650 + NVIDIA Tesla C2050 2010 55 102

• Пять из семи самых мощных (включая три первых) – на Tesla

• Все построенные в 2010 из первой семерки – на Tesla

22

Приложения

Приложения с поддержкой CUDA

24

Пример: аэродинамика. Porsche.

Комбинация вычислений и визуализации

Переход от сервера к настольной системе (Tesla)

25

Moldflow – ускорение на GPU

26

Компьютерная томография

Demo

28

Расчет стоимости опционов и стратегии трейдинга

Расчеты используют симуляции

Монте-Карло

Базируются на генераторе

случайных чисел

Ускорение на CUDA – до 100

раз

Общее ускорение алгоритма 25-

60 раз

0 1 000 2 000 3 000 4 000 5 000 6 000

LRAND48

Mersenne TwisterDC

+ Box-Muller(MKL)

Speed (Millions samples per second)

100x быстрее генерация случайных чисел

Tesla C1060 Xeon Quad (3.0Ghz)

31

A Necessary Compromise?

32

Цель .

Задача .

Решение .

Повысить наглядность и удобство диагностики

плода

Получать результаты в высоком разрешении в режиме реального времени

Амниоскопический рендеринг с использованием

GPU NVIDIA позволяет пациентам получить

трехмерное изображение младенца, выводя УЗИ на качественно новый уровень

33

34

ACUSON SC2000

35

0,89

241

0

50

100

150

200

250

300

Intel QX6700quad-core w/

SSE

4 GPUs(Tesla 10-

series)

Bill

ion

Eva

luat

ion

s /

sec

Ion Placement in VMD

271x

Faster

0

100

200

300

400

500

600

Tim

e s

tep

s ca

lcu

late

d /

se

c

Number of Particles

Lennard-Jones Liquid Model on LAMMPs vs HOOMD

16 AMD Opteron…1 GPU (Tesla 8-…

Source: Stone, Phillips, Hardy, Schulten

Молекулярная динамика

Использующие GPU

NAMD / VMD

HOOMD

ACE-MD

MD-GPU

GROMACS

AMBER

LAMMPS

В разработке

CHARMM

Source: Anderson, Lorenz, Travesset

39

Уменьшение времени реакции на ежесекундно

появляющиеся новые угрозы

Уникальный алгоритм должен быстро сверять

подозрительный файл с 50 млн. эталонов

Перенос задачи на GPU дал 360-кратный прирост

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

Цель .

Задача .

Решение .

40

Сокращение времени обработки документов

Ускорение каждого из этапов обработки

изображения

Применение CUDA на одном из этапов увеличило

его скорость в 30 раз, и ускорило весь процесс

обработки сложных документов в 2 раза

Цель .

Задача .

Решение .

41

Динамика жидкостей (CFD)

0,9 0,6 0,6 0,5

24

38

48 54

0

10

20

30

40

50

60

128x32x128

256x32x256

512x32x512

1024x32x1024

Gflops

Incompressible Navier-Stokes

AMD Opteron 2.4GHz

Source: Thibault, Senocak

Уравнения Навье-Стокса

Сеточный метод Больцмана

Трехмерные уравнения Эйлера

43

Электромагнетизм / Электродинамика

9,9 Mcells/s

500,0 Mcells/s

0

100

200

300

400

500

600

Intel Xeon (2.6 GHz) 4 GPUs(Tesla 8-series)

Speed Mcells/s

Cell Phone Model Simulation Simulation size : 80 Mcells

FDTD Acceleration using GPUs Source: Acceleware

Используют GPU

Acceleware

EM Photonics

CST Studio

В разработке

Maxwell equation solver

Ring Oscillator (FDTD)

Particle beam dynamics

simulator

44

Моделирование природных явлений

Source: Michalakes, Vachharajani

Токийский Технологический Институт

полностью перенес модель WRF

(расчета прогнозов погоды) на GPU.

Получено 80-кратное ускорение.

Метеорологическое Агентство Японии

рассматривает вариант перехода на

GPU при грядущем обновлении модели

расчета.

47

Рендеринг на

GPU в CATIA v6

48 Google SketchUp Model in Bunkspeed Shot

49

50

MSC.Marc – ускорение на GPU

Время вычислений, сек.

Размерность

матрицы

2x Quad Core X54xx CPU +

Tesla

2x Quad Core X54xx CPU

3.1M 15663 (4.0x) 62854

1.6M 835 (3.3x) 2782

1.1M 495 (5.3x) 2639

0.7M 859 (4.7x) 4050

0.4M 202 (5.6x) 1137

0.2M 58 (3.9x) 223

2x Quad Core Harpertown CPU + Tesla

ANSYS Mechanical R13 – ускорение на GPU

Intel Xeon 5560 (2.8 GHz, 4 cores) + Tesla C2050 3GB

Во втором квартале

Abaqus/Standard на GPU

53

заказчики

Сравнение

GPU с CPU

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

мощность 18x - 27x 12x - 17x

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

площадь 20x - 31x 15x - 20x

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

стоимость 15x - 20x 10x - 12x

вендоры ПО

20+ нефтегазовых компаний используют CUDA

Обработка сейсмических данных

~$400 K ~$8 M

45 КВт 1200 КВт В 27 раз меньше энергии

В 20 раз дешевле

Равная производительность 1 1

32x Tesla S1070s 2000x CPU Servers В 31 раз меньше места

Приложения

Tools

Oil & Gas

Bio-Chemistry

Bio-Informatics

TotalView Debugger

NVIDIA Video Libraries

AccelerEyes Jacket

MATLAB

EMPhotonics CULAPACK

Bright Cluster Manager

CAPS HMPP MATLAB

Thrust C++ Template Lib

CUDA C/C++

PGI CUDA Fortran

Parallel Nsight Vis Studio IDE

Allinea DDT Debugger

OpenEye ROCS

Available Announced

TauCUDA Perf Tools

NVIDIA NPP Perf Primitives

ParaTools VampirTrace

VSG Open Inventor

StoneRidge RTM

Headwave Suite

Acceleware RTM Solver

GeoStar Seismic Suite

ffA SVI Pro

OpenGeoSolutions OpenSEIS

Paradigm RTM

Seismic City RTM

Tsunami RTM

CAE ACUSIM AcuSolve 1.8

Autodesk Moldflow

Prometch Particleworks

Remcom XFdtd 7.0

LSTC LS-DYNA 971

MSC.Software Marc 2010.2

PGI Accelerators

Platform LSF Cluster Mgr

MAGMA (LAPACK)

FluiDyna OpenFOAM

Metacomp CFD++

уже доступны будущее

Libraries

Wolfram Mathematica

CUDA FFT CUDA BLAS

TeraChem BigDFT ABINT

VMD

Acellera ACEMD

AMBER DL-POLY

GROMACS

HOOMD

LAMMPS

NAMD

GAMESS CP2K

CUDA-BLASTP

CUDA-EC

CUDA-MEME

CUDA SW++ SmithWaterm GPU-HMMR

HEX Protein Docking

MUMmerGPU PIPER

Docking

ANSYS Mechanical

RNG & SPARSE CUDA Libraries

Paradigm SKUA

Panorama Tech

PGI CUDA x86

Приложения

Siemens 4D Ultrasound

Rendering

Finance

EDA

Digisens Medical

Schrodinger Core Hopping

MotionDSP Ikena Video

Manifold GIS

Dalsa Machine Vision

Synopsys TCAD

SPEAG SEMCAD X

Agilent EMPro 2010

CST Microwave

Agilent ADS SPICE

Acceleware FDTD Solver

Acceleware EM Solution

Aquimin AlphaVision

Other

NAG RNG

SciComp SciFinance

Hanweck Options Analy

уже доступны

Gauda OPC

Useful Progress Med

Lightworks Artisan

Autodesk 3ds Max

NVIDIA OptiX (SDK)

mental images iray (OEM)

Bunkspeed Shot (iray)

Refractive SW Octane

Works Zebra Zeany

Chaos Group V-Ray GPU

Cebas finalRender

Random Control Arion

Caustic Graphics

Weta Digital PantaRay

ILM Plume

будущее

Available Announced

Digital Anarchy Photo

Video

Elemental Video

Fraunhofer JPEG2000

Cinnafilm Pixel Strings

Assimilate SCRATCH

The Foundry Kronos

TDVision TDVCodec

ARRI Various Apps

Black Magic Da Vinci

MainConcept CUDA Encoder

GenArts Sapphire

Adobe Premier Pro CS5

Murex MACS

Numerix Risk RMS Risk

Mgt Solutions

Rocketick Veritlog Sim

MvTec Machine Vis

58

Экосистема гибридных ВС

Проектирование и поставка высокопроизводительных

вычислительных систем на базе GPU (оптимизация

производительности по Linpack)

Обучение специалистов заказчика распараллеливанию

вычислений на GPU

Аутсорсинг разработки на GPU – оптимизация и перенос

существующего ПО на гибридную архитектуру

59

Преконфигурированные GPU-кластеры

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

Антон Джораев

adzhoraev@nvidia.com

© NVIDIA Corporation 2011

Rapid Application Porting

Unified Virtual Addressing

Faster Multi-GPU Programming

GPU Direct 2.0

CUDA 4.0 Application Porting Made Simpler

Easier Parallel Programming in C++

Thrust

© NVIDIA Corporation 2011

Before GPUDirect v2.0

Required Copy into Main Memory

GPU1

GPU1

Memory

GPU2

GPU2

Memory

PCI-e

CPU

Chip

set

System

Memory

© NVIDIA Corporation 2011

GPUDirect v2.0: Peer-to-Peer Communication

Direct Transfers b/w GPUs

GPU1

GPU1

Memory

GPU2

GPU2

Memory

PCI-e

CPU

Chip

set

System

Memory

© NVIDIA Corporation 2011

Unified Virtual Addressing Easier to Program with Single Address Space

No UVA: Multiple Memory Spaces

UVA : Single Address

Space System

Memory

CPU GPU0

GPU0

Memory

GPU1

GPU1

Memory

System

Memory

CPU GPU0

GPU0

Memory

GPU1

GPU1

Memory

PCI-e PCI-e

0x0000

0xFFFF

0x0000

0xFFFF

0x0000

0xFFFF

0x0000

0xFFFF

© NVIDIA Corporation 2011

C++ Templatized Algorithms & Data Structures (Thrust)

Powerful open source C++ parallel algorithms & data structures

Similar to C++ Standard Template Library (STL)

Automatically chooses the fastest code path at compile time

Divides work between GPUs and multi-core CPUs

Parallel sorting @ 5x to 100x faster than STL and TBB

Data Structures

•thrust::device_vector •thrust::host_vector •thrust::device_ptr • Etc.

Algorithms

•thrust::sort •thrust::reduce •thrust::exclusive_scan • Etc.

© NVIDIA Corporation 2011

Automated Performance Analysis in Visual Profiler

Summary analysis & hints

Session

Device

Context

Kernel

New UI for kernel analysis

Identify limiting factor

Analyze instruction throughput

Analyze memory throughput

Analyze kernel occupancy

67

NVIDIA Quadro

Решения для самых сложных задач визуализации

70

SolidWorks - Режим Normal View 3D

71

SolidWorks - Режим Real View 3D

только на Quadro

72

SolidWorks - Normal View

73

SolidWorks - Real View 3D

только на Quadro

74

SolidWorks – производительность 3D

0

20

40

60

80

100

120

140

GeForce GTX 260

Quadro FX 580

Quadro FX 1800

Quadro FX 3800

75

Игровая графика не поддерживает antialiasing

76

Визуализация на Quadro (с antialiasing)

Игровая графика не поддерживает antialiasing

77

Бытовая графика Профессиональная графика Quadro

Правильное отображение. Сохранение целостности при манипулировании.

78

Quadro 5000

Quadro 4000

Quadro6000

6 GB GDDR5 448 CUDA Cores ECC Stereo G-Sync Compatible HD SDI Compatible

2.5 GB GDDR5 352 CUDA Cores ECC Stereo G-Sync Compatible HD SDI Compatible 2 GB GDDR5

256 CUDA Cores Optional Stereo HD SDI Compatible

QuadroPlex 7000

12 GB GDDR5 Total 896 Cores ECC Stereo Quad DVI-DL G-Sync Incl. DHIC Compatible:

1,792 Cores 24GB 8 DVI-DL

79

NVIDIA Quadro Plex

Любое приложение просто работает, при этом все экраны синхронизированы

80

Масштабируемая графика

Multi Display / Projector

4K Panel or Projector

Digital Signage

Power wall

CAVE

top related