You are on page 1of 13

NVIDIA

TESLA
GPU Based
Super Computer
By : Adam Powell
Student # 3198371
For COSC 3P93
What is a GPU?
It is a GPU (Graphical Processing Unit)
First introduced in 1999
First non-graphical applications
started 2003
Had many problems for non-graphical
applications
ie. Programmer needed knowledge of
API and architecture
Along came CUDA
Introduction of CUDA (Compute
Unified Device Architecture)
Changed the architecture to better
suit general programming
CUDA is a software and hardware
architecture
Supports C Programming
Along came CUDA cont.
Replaced pixel and vertex pipelines
with a single pipeline
Added SIMT (single instruction
multiple thread)
Still programmers asked for more
Next Gen Code Name
Fermi
Improved double precision
performance
ECC Support (error correction code)
True Cache Hierarchy
More Shared Memory
Faster Context Switching
Faster Atomic Operations
Fermi Architecture
16 SMs (streaming multiprocessors)
Each SM contains 32 CUDA cores
Totaling 512 CUDA cores
Has 64-bit memory partitions
Supports up to 6 GB GDDR5 DRAM
Connects to a host CPU via PCI
Express
Build Your Own
Component Type Price

Asus P6T7 Ws
Motherboard $429.00
SuperComputer
$1299.99 x 3 =
GPU Tesla C1060 x 3
$3899.97

Display GPU PNY Quadro FX 570 $169.99

CPU Intel Core i7 860 $289.99

$138.99 * 6 =
RAM DDR 3 Kingston 4GB DDR3
$833.94

Total $5622.89
Programming Model
Parallel functions are done on the GPU
Non parallel code is done on the host CPU
Parallel functions are organized in
threads/thread blocks/arrays of thread blocks
Threads each have its own private memory
Thread blocks share memory with each
thread in its block
Arrays of blocks share memory for application
Threads and SMs
Development Tools
OpenCL Already talked about by Ryan
CUDA C
DirectCompute Supported byt DirectX
10 and DirectX 11
CUDA Fortran Compiler
Sadly there is no NVIDIA support for
ADA
NVIDIA Nexus or NSight
Nexus or Parallel NSight ???
NVIDIA refers to the tool kit for Visual
Studio
Currently in a private beta
Planned to support OpenCL, CUDA C,
DirectCompute, Direct 3D and
OpenGL
It has 3 major components
Parallel NSight 3
components
Debugger
Break points
Memory inspection
Analyzer
Tool for viewing performance
CPU/GPU Events such as waits and core
allocation
Graphics Inspector
Texture viewer, vertex buffers, API state
References
http://www.nvidia.com/content/PDF/fermi_whit
e_papers/NVIDIA_Fermi_Compute_Architecture_W
hitepaper.pdf
http://www.nvidia.com/object/pr_nexus_093009
.html
http://courses.ece.illinois.edu/ece498/al/textbo
ok/Chapter2-CudaProgrammingModel.pdf
http://www.nvidia.com/object/cuda_opencl_new
.html
http://www.nvidia.com/object/cuda_directcomp
ute.html
http://www.nvidia.com/object/cuda_fortran.html