Programming with CUDA WS 08/09 Lecture 1 Tue, 21 Oct, 2008.

Slides:



Advertisements
Similar presentations
Lecture 1: Introduction
Advertisements

Complete Unified Device Architecture A Highly Scalable Parallel Programming Framework Submitted in partial fulfillment of the requirements for the Maryland.
Home Exam 2: Video Encoding on GPUs using nVIDIA CUDA with Managed Memory Home Exam 2: Video Encoding on GPUs using nVIDIA CUDA with Managed Memory September.
COMPUTER GRAPHICS CS 482 – FALL 2014 NOVEMBER 10, 2014 GRAPHICS HARDWARE GRAPHICS PROCESSING UNITS PARALLELISM.
Lecture 38: Chapter 7: Multiprocessors Today’s topic –Vector processors –GPUs –An example 1.
ITCS 3181 Logic and Computer Systems
GPGPU Introduction Alan Gray EPCC The University of Edinburgh.
Programming with CUDA WS 08/09 Lecture 12 Tue, 02 Dec, 2008.
Acceleration of the Smith– Waterman algorithm using single and multiple graphics processors Author : Ali Khajeh-Saeed, Stephen Poole, J. Blair Perot. Publisher:
GPU Computing with CUDA as a focus Christie Donovan.
2009/04/07 Yun-Yang Ma.  Overview  What is CUDA ◦ Architecture ◦ Programming Model ◦ Memory Model  H.264 Motion Estimation on CUDA ◦ Method ◦ Experimental.
ITCS 3181 Logic and Computer Systems
Programming with CUDA WS 08/09 Lecture 11 Thu, 27 Nov, 2008.
Programming with CUDA, WS09 Waqar Saleem, Jens Müller Programming with CUDA and Parallel Algorithms Waqar Saleem Jens Müller.
Programming with CUDA, WS09 Waqar Saleem, Jens Müller Programming with CUDA and Parallel Algorithms Waqar Saleem Jens Müller.
COMS W1004 Introduction to Computer Science June 25, 2008.
Architectural Support for Operating Systems. Announcements Most office hours are finalized Assignments up every Wednesday, due next week CS 415 section.
Name: Kaiyong Zhao Supervisor: Dr. X. -W Chu. Background & Related Work Multiple-Precision Integer GPU Computing & CUDA Multiple-Precision Arithmetic.
1 ITCS 6/8010 CUDA Programming, UNC-Charlotte, B. Wilkinson, Jan 19, 2011 Emergence of GPU systems and clusters for general purpose High Performance Computing.
The PTX GPU Assembly Simulator and Interpreter N.M. Stiffler Zheming Jin Ibrahim Savran.
Programming with CUDA WS 08/09 Lecture 13 Thu, 04 Dec, 2008.
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
GPGPU overview. Graphics Processing Unit (GPU) GPU is the chip in computer video cards, PS3, Xbox, etc – Designed to realize the 3D graphics pipeline.
Jared Barnes Chris Jackson.  Originally created to calculate pixel values  Each core executes the same set of instructions Mario projected onto several.
1 ITCS 4/5010 CUDA Programming, UNC-Charlotte, B. Wilkinson, Dec 31, 2012 Emergence of GPU systems and clusters for general purpose High Performance Computing.
(1) ECE 8823: GPU Architectures Sudhakar Yalamanchili School of Electrical and Computer Engineering Georgia Institute of Technology NVIDIA Keplar.
Computer Graphics Graphics Hardware
BY: ALI AJORIAN ISFAHAN UNIVERSITY OF TECHNOLOGY 2012 GPU Architecture 1.
By Arun Bhandari Course: HPC Date: 01/28/12. GPU (Graphics Processing Unit) High performance many core processors Only used to accelerate certain parts.
Introduction to CUDA 1 of 2 Patrick Cozzi University of Pennsylvania CIS Fall 2012.
General Purpose Computing on Graphics Processing Units: Optimization Strategy Henry Au Space and Naval Warfare Center Pacific 09/12/12.
GPU Programming and Architecture: Course Overview Patrick Cozzi University of Pennsylvania CIS Spring 2012.
Lecture 8 : Manycore GPU Programming with CUDA Courtesy : Prof. Christopher Cooper’s and Prof. Chowdhury’s course note slides are used in this lecture.
Emergence of GPU systems and clusters for general purpose high performance computing ITCS 4145/5145 April 3, 2012 © Barry Wilkinson.
GPU Architecture and Programming
고급 컴퓨터 그래픽스 중앙대학교 컴퓨터공학부 손 봉 수. Course Overview Level : CSE graduate course No required text. We will use lecture notes and on-line materials This course.
GPU Programming and Architecture: Course Overview Patrick Cozzi University of Pennsylvania CIS Fall 2012.
"Distributed Computing and Grid-technologies in Science and Education " PROSPECTS OF USING GPU IN DESKTOP-GRID SYSTEMS Klimov Georgy Dubna, 2012.
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
Introduction to CUDA (1 of n*) Patrick Cozzi University of Pennsylvania CIS Spring 2011 * Where n is 2 or 3.
고급 컴퓨터 그래픽스 중앙대학교 컴퓨터공학부 손 봉 수. Course Overview Level : CSE graduate course No required text. We will use lecture notes and on-line materials This course.
Scientific Computing on Graphics Hardware Robert Strzodka, Dominik G ö ddeke Reading, UK, May
Programming with CUDA WS 08/09 Lecture 10 Tue, 25 Nov, 2008.
GPUs – Graphics Processing Units Applications in Graphics Processing and Beyond COSC 3P93 – Parallel ComputingMatt Peskett.
Fateme Hajikarami Spring  What is GPGPU ? ◦ General-Purpose computing on a Graphics Processing Unit ◦ Using graphic hardware for non-graphic computations.
Introduction to CUDA CAP 4730 Spring 2012 Tushar Athawale.
Lecture 8 : Manycore GPU Programming with CUDA Courtesy : SUNY-Stony Brook Prof. Chowdhury’s course note slides are used in this lecture note.
Class 9_1 Today: More modeling work session Extension: Computer model due as a HW assignment on Tuesday, March 11.
Computer Architecture Lecture 24 Parallel Processing Ralph Grishman November 2015 NYU.
GPGPU introduction. Why is GPU in the picture Seeking exa-scale computing platform Minimize power per operation. – Power is directly correlated to the.
COT 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
Fast and parallel implementation of Image Processing Algorithm using CUDA Technology On GPU Hardware Neha Patil Badrinath Roysam Department of Electrical.
Programming with CUDA WS 08/09 Lecture 2 Tue, 28 Oct, 2008.
CS 179: GPU Computing LECTURE 2: MORE BASICS. Recap Can use GPU to solve highly parallelizable problems Straightforward extension to C++ ◦Separate CUDA.
NVIDIA® TESLA™ GPU Based Super Computer By : Adam Powell Student # For COSC 3P93.
General Purpose computing on Graphics Processing Units
Computer Graphics Graphics Hardware
Emergence of GPU systems for general purpose high performance computing ITCS 4145/5145 July 12, 2012 © Barry Wilkinson CUDAIntro.ppt.
GPU Architecture and Its Application
CS 179: GPU Programming Lecture 1: Introduction 1
CS427 Multicore Architecture and Parallel Computing
Basic CUDA Programming
CS 179: GPU Programming Lecture 1: Introduction 1
CS 179: GPU Programming Lecture 1: Introduction 1
Lecture 2: Intro to the simd lifestyle and GPU internals
CSC 2231: Parallel Computer Architecture and Programming GPUs
CS/EE 217 – GPU Architecture and Parallel Programming
NVIDIA Fermi Architecture
ECE 8823: GPU Architectures
EE 147 – GPU Computing and Programming
Presentation transcript:

Programming with CUDA WS 08/09 Lecture 1 Tue, 21 Oct, 2008

Organization Two lectures per week Two lectures per week –Tuesdays : 4pm-5pm Ernst-Abbe-Platz 2 (room 3517)‏ –Thursdays : 4pm-6pm Carl-Zeiss-Strasse (room 125)‏ One exercise session per week One exercise session per week –Tuesdays : 5pm-6pm Ernst-Abbe-Platz 2 (room 3517)

Organization People People –Waqar Saleem (me) –Jens K. Müller Office hours Office hours –Wednesdays : 2pm-4pm Ernst-Abbe-Platz 2 (room 3311)‏

Organization Reference Material Reference Material – links to university courses on CUDA – documentation, programming guide Lecture slides will be made available after each lecture on the course website Lecture slides will be made available after each lecture on the course website – jena.de/For+Students/CUDA.html jena.de/For+Students/CUDA.htmlhttp://theinf2.informatik.uni- jena.de/For+Students/CUDA.html

Organization Two-part course Two-part course Part 1: before Christmas Part 1: before Christmas –Present and learn about CUDA –Form student groups –Groups choose/are assigned projects Part 2: after Christmas Part 2: after Christmas –Groups work on and present their projects

The Bacardi Algorithm (courtesy of Elena Andreeva)‏ Elena AndreevaElena Andreeva

The Bacardi Algorithm Bacardi Bacardi

The Bacardi Algorithm Bacardi Bacardi Bacar Bacar

The Bacardi Algorithm Bacardi Bacardi Bacar Bacar Wacar Wacar

The Bacardi Algorithm Bacardi Bacardi Bacar Bacar Wacar Wacar Waqar Waqar

GPGPU (Intro)‏

GPGPU GPGPU GPGPU

GPGPU –Graphical Processing Unit

GPGPU GPGPU GPGPU –Graphical Processing Unit –Handles values of pixels displayed on screen Highly parallel computation Highly parallel computation Optimized for parallel computations Optimized for parallel computations

GPGPU GPGPU GPGPU

GPGPU –General Purpose computing on GPU

GPGPU GPGPU GPGPU –General Purpose computing on GPU –Many non-graphics applications can be parallelized Can then be ported to a GPU implementation Can then be ported to a GPU implementation

GPGPU General info General info – – Variants Variants –GPGP –GP 2

Why GPU? (GPU vs. CPU)‏ Specialized for rendering Specialized for rendering –Highly parallel, compute-intensive application –Multiple cores, high memory bandwidths

Why GPU? (GPU vs. CPU)‏ More data processing transistors for More data processing transistors for –Flow control: same program for each data –Data caching: one arithmetic-intensive program, many data

So, why now? Previously Previously –Needed specialized graphics APIs –GPU DRAM had easy read but limited write capability Now, CUDA – Compute Unified Device Architecture Now, CUDA – Compute Unified Device Architecture –Minimal extension to C –GPU DRAM read & write

CUDA

Some setup issues CUDA ready cards CUDA ready cards – ml mlhttp:// ml –CUDA ready machine available in pool CUDA can be run in emulation mode CUDA can be run in emulation mode –Will install CUDA in emu mode on pool PCs –Repeat at home on own machines

Some setup issues Signup for pool access Signup for pool access –Usernames need to be known to grant access to CUDA ready machine

All for today Next time Next time –Finalize course/people websites –CUDA programming model –Install CUDA on pool PCs

See you next week!