example application of gpu

20
GPU Computing Motivation

Upload: chakkrit-tantithamthavorn

Post on 18-Jan-2015

3.567 views

Category:

Technology


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Example Application of GPU

GPU ComputingMotivation

Page 2: Example Application of GPU

© NVIDIA Corporation 2007

Computing Challenge

graphic

Task Computing Data Computing

Page 3: Example Application of GPU

© NVIDIA Corporation 2007

Extreme Growth in Raw Data

Source: John Bates, NOAA Nat. Climate Center

NOAA Weather Data

Peta

byte

s

Source: Alexa, YouTube 2006

YouTube Bandwidth Growth

Mill

ions

Source: Hedburg, CPI, Walmart

Walmart Transaction Tracking

Mill

ions

Source: Jim Farnsworth, BP May 2005

BP Oil and Gas Active Data

Tera

byte

s

NOAA NASA Weather Data in Petabytes

0

10

20

30

40

50

60

70

80

90

2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017

Page 4: Example Application of GPU

© NVIDIA Corporation 2007

Computational Horsepower

GPU is a massively parallel computation engineHigh memory bandwidth (5-10x CPU)High floating-point performance (5-10x CPU)

Page 5: Example Application of GPU

© NVIDIA Corporation 2007

Benchmarking: CPU vs. GPU Computing

G80 vs. Core2 Duo 2.66 GHzMeasured against commercial CPU benchmarks when possible

Page 6: Example Application of GPU

“Free” Massively Parallel Processors

It’s not science fiction, it’s just funded by them

Asst Master Chief Harvard

Page 7: Example Application of GPU

SuccessStories

Page 8: Example Application of GPU

© NVIDIA Corporation 2007

Success Stories: Data to DesignAcceleware EM Field simulation technology for the GPU

3D Finite-Difference and Finite-Element (FDTD)

Modeling of:

Cell phone irradiation

MRI Design / Modeling

Printed Circuit Boards

Radar Cross Section (Military)

Pacemaker with Transmit Antenna10X

1X

4 GPUs2 GPUs1 GPUCPU3.2 GHz

0

100

200

300

400

500

600

700

Performance (Mcells/s)

20X

5X

Page 9: Example Application of GPU

© NVIDIA Corporation 2007

EvolvedMachines130X Speed upSimulate brain circuitrySensory computing: vision, olfactory

EvolvedMachines

Page 10: Example Application of GPU

© NVIDIA Corporation 2007

10X with MATLAB CPU+GPU

Pseudo-spectral simulation of 2D Isotropic turbulence

Matlab: Language of Science

http://www.amath.washington.edu/courses/571-winter-2006/matlab/FS_2Dturb.m

http://developer.nvidia.com/object/matlab_cuda.html

Page 11: Example Application of GPU

© NVIDIA Corporation 2007

MATLAB Example:Advection of an elliptic vortex

256x256 mesh, 512 RK4 steps, Linux, MATLAB filehttp://www.amath.washington.edu/courses/571-winter-2006/matlab/FS_vortex.m

Matlab168 seconds

Matlab with CUDA(single precision FFTs)20 seconds

Page 12: Example Application of GPU

© NVIDIA Corporation 2007

MATLAB Example:Pseudo-spectral simulation of 2D Isotropic turbulence

MATLAB 992 seconds

MATLAB with CUDA(single precision FFTs)93 seconds

512x512 mesh, 400 RK4 steps, Windows XP, MATLAB filehttp://www.amath.washington.edu/courses/571-winter-2006/matlab/FS_2Dturb.m

Page 13: Example Application of GPU

© NVIDIA Corporation 2007

NAMD/VMD Molecular Dynamics

http://www.ks.uiuc.edu/Research/vmd/projects/ece498/lecture/

240X speedup Computational biology

Page 14: Example Application of GPU

© NVIDIA Corporation 2007

Molecular Dynamics Example

Case study: molecular dynamics research at U. Illinois Urbana-Champaign

(Scientist-sponsored) course project for CS 498AL: Programming Massively Parallel Multiprocessors (Kirk/Hwu)Next slides stolen from a nice description of problem, algorithms, and iterative optimization process available at:

http://www.ks.uiuc.edu/Research/vmd/projects/ece498/lecture/

Page 15: Example Application of GPU

© NVIDIA Corporation 2007

Page 16: Example Application of GPU

© NVIDIA Corporation 2007

Molecular Modeling: Ion Placement

Biomolecular simulations attempt to replicate in vivoconditions in silico.Model structures are initially constructed in vacuumSolvent (water) and ions are added as necessary for the required biological conditionsComputational requirements scale with the size of the simulated structure

Page 17: Example Application of GPU

© NVIDIA Corporation 2007

Evolution of Ion Placement CodeFirst implementation was sequentialVirus structure with 10^6 atoms would require 10 CPU daysTuned for Intel C/C++ vectorization+SSE, ~20x speedupParallelized /w pthreads: high data parallelism = linear speedupParallelized GPU accelerated implementation: 3 GeForce 8800GTX cards outrun ~300 Itanium2 CPUs!Virus structure now runs in 25 seconds on 3 GPUs!Further speedups should still be possible…

Page 18: Example Application of GPU

© NVIDIA Corporation 2007

Multi-GPU CUDA Coulombic Potential Map Performance

Host: Intel Core 2 Quad, 8GB RAM, ~$3,0003 GPUs: NVIDIA GeForce 8800GTX, ~$550 each32-bit RHEL4 Linux (want 64-bit CUDA!!)235 GFLOPS per GPU for current version of coulombic potential map kernel705 GFLOPS total for multithreaded multi-GPU version Three GeForce 8800GTX GPUs

in a single machine, cost ~$4,650

Page 19: Example Application of GPU

ProfessorPartnership

Page 20: Example Application of GPU

© NVIDIA Corporation 2007

NVIDIA Professor Partnership

Support faculty research & teaching effortsSmall equipment gifts (1-2 GPUs) Significant discounts on GPU purchases

Especially Quadro, Tesla equipmentUseful for cost matching

Research contracts Small cash grants (typically ~$25K gifts)Medium-scale equipment donations (10-30 GPUs)

Informal proposals, reviewed quarterlyFocus areas: GPU computing, especially with an educational mission or component

http://www.nvidia.com/page/professor_partnership.html

Easy

Competitive