CSE 690 General-Purpose Computation on Graphics Hardware (GPGPU) - PowerPoint PPT Presentation

About This Presentation
Title:

CSE 690 General-Purpose Computation on Graphics Hardware (GPGPU)

Description:

The GPU on commodity video cards has evolved into an extremely ... Ian Buck & Tim Purcell, GPU Gems. Motivation: Computational Power. Courtesy Naga Govindaraju ... – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 22
Provided by: markh225
Category:

less

Transcript and Presenter's Notes

Title: CSE 690 General-Purpose Computation on Graphics Hardware (GPGPU)


1
CSE 690General-Purpose Computation on Graphics
Hardware(GPGPU)
Courtesy David Luebke, University of Virginia
2
(No Transcript)
3
Introduction
  • The GPU on commodity video cards has evolved into
    an extremely flexible and powerful processor
  • Programmability
  • Precision
  • Power
  • This course will address how to harness that
    power for general-purpose computation

4
Motivation Computational Power
  • GPUs are fast
  • 3 GHz Pentium4 theoretical 6 GFLOPS, 5.96 GB/sec
    peak
  • GeForceFX 5900 observed 20 GFLOPs, 25.3 GB/sec
    peak
  • GPUs are getting faster, faster
  • CPUs annual growth ? 1.5 ? decade growth ? 60
  • GPUs annual growth gt 2.0 ? decade growth gt 1000

Courtesy Kurt Akeley,Ian Buck Tim Purcell, GPU
Gems
5
MotivationComputational Power
GPU
CPU
Courtesy Naga Govindaraju
6
An Aside Computational Power
  • Why are GPUs getting faster so fast?
  • Arithmetic intensity the specialized nature of
    GPUs makes it easier to use additional
    transistors for computation not cache
  • Economics multi-billion dollar video game market
    is a pressure cooker that drives innovation

7
MotivationFlexible and precise
  • Modern GPUs are deeply programmable
  • Programmable pixel, vertex, video engines
  • Solidifying high-level language support
  • Modern GPUs support high precision
  • 32 bit floating point throughout the pipeline
  • High enough for many (not all) applications

8
MotivationThe Potential of GPGPU
  • The power and flexibility of GPUs makes them an
    attractive platform for general-purpose
    computation
  • Example applications range from in-game physics
    simulation to conventional computational science
  • Goal make the inexpensive power of the GPU
    available to developers as a sort of
    computational co-processor

9
The ProblemDifficult To Use
  • GPUs designed for and driven by video games
  • Programming model is unusual tied to computer
    graphics
  • Programming environment is tightly constrained
  • Underlying architectures are
  • Inherently parallel
  • Rapidly evolving (even in basic feature set!)
  • Largely secret
  • Cant simply port code written for the CPU!

10
Course Goals
  • A detailed introduction to general-purpose
    computing on graphics hardware
  • Emphasize
  • Core computational building blocks
  • Strategies and tools for programming GPUs
  • Tips tricks, perils pitfalls of GPU
    programming
  • Several case studies to bring it all together

11
Course Topics
  • GPU building blocks
  • Languages and tools
  • Effective GPU programming
  • GPGPU case studies

12
Course Topics Details
  • GPU building blocks
  • Linear algebra
  • Sorting and searching
  • Database operations
  • Languages and tools
  • High-level languages
  • Debugging tools

13
Course Topics Details
  • Effective GPU programming
  • Efficient data-parallel programming
  • Data formatting addressing
  • GPU computation strategies tricks
  • Case studies in GPGPU Programming
  • Physically-based simulation on GPUs
  • Ray tracing photon mapping on GPUs
  • Tone mapping on GPUs
  • Level sets on GPUs

14
Intended Audience
  • Anyone interested in accelerated computing
  • from all academic disciplines
  • No graphics background required
  • will cover all necessary and relevant detail in
    the course
  • What is required
  • working knowledge of C/C
  • linear algebra
  • enthusiasm and an open mind

15
Course Schedule
  • Understanding the fabric computer graphics
    basics
  • Overview of GPUs
  • architecture
  • features
  • programming model
  • some simple applications
  • System issues
  • cache and data management,
  • languages and compilers
  • stream processing
  • GPU-CPU load balancing

16
Course Schedule
  • GPU-specific implementations of standard
    operations
  • sorting and searching
  • linear algebra
  • signal processing
  • differential equations
  • numerical solvers

17
Course Schedule
  • Numerical and scientific computations
  • non-linear optimization
  • FFT
  • differential equations for rigid body simulation
  • statistics
  • fluid dynamics
  • molecular dynamics

18
Course Schedule
  • Geometric computations
  • proximity and collision computations
  • Voronoi diagrams and distance fields
  • motion planning and navigation
  • Image processing
  • automatic and user-guided interactive
    segmentation
  • level-set operations
  • visual feedback (coupling computational and
    visualization aspects)
  • Medical imaging
  • computed tomography
  • functional imaging

19
Course Schedule
  • Computer vision and AI
  • real-time tracking
  • surface, shape, and scene reconstruction
  • reasoning and belief propagation
  • Database computations
  • database queries predicates, booleans,
    aggregates
  • streaming databases
  • data mining and visual data mining

20
Course Schedule
  • Computer graphics and visualization
  • raytracing
  • photon-mapping
  • shadows
  • radiosity
  • amorphous phenomena
  • volume rendering

21
Course Schedule
  • GPU Clusters
  • parallel computing environments for GPUs
  • comparison with other high performance
    specialized hardware (playstation2 cluster from
    UIUC)
  • Project presentations
  • at the end of the term
Write a Comment
User Comments (0)
About PowerShow.com