Computer Graphics Graphics Hardware

Slides:



Advertisements
Similar presentations
Computer Graphics Prof. Muhammad Saeed. 2 Hardware ( Graphic Cards ) II Hardware II Computer Graphics 1 August 2012.
Advertisements

Computer Graphics Prof. Muhammad Saeed Dept. of Computer Science & IT Federal Urdu University of Arts, Sciences and Technology.
Bus structures Unit objectives:
HARDWARE Rashedul Hasan..
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.
Lecture 1 Computer Graphics Hardware Basic graphics hardware –Display devices –Video controller –Memory –CPU –System bus Graphics Hardware # 1 CG show.
Higher Computing Computer Systems 3. Computer Performance.
GPGPU Introduction Alan Gray EPCC The University of Edinburgh.
HPCC Mid-Morning Break High Performance Computing on a GPU cluster Dirk Colbry, Ph.D. Research Specialist Institute for Cyber Enabled Discovery.
GRAPHICS AND COMPUTING GPUS Jehan-François Pâris
OS Case Study: The Xbox 360  Instructor: Rob Nash  Readings: See citations in the slides.
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.
Evolutions of GPU Architectures Andrew Coile CMPE220 3/2007.
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
Presentation by David Fong
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
Raghu Machiraju Slides: Courtesy - Prof. Huamin Wang, CSE, OSU
GPGPU overview. Graphics Processing Unit (GPU) GPU is the chip in computer video cards, PS3, Xbox, etc – Designed to realize the 3D graphics pipeline.
Prepared by Careene McCallum-Rodney Hardware specification of a computer system.
HPCC Mid-Morning Break Dirk Colbry, Ph.D. Research Specialist Institute for Cyber Enabled Discovery Introduction to the new GPU (GFX) cluster.
PHY 201 (Blum) Buses Warning: some of the terminology is used inconsistently within the field.
Emotion Engine A look at the microprocessor at the center of the PlayStation2 gaming console Charles Aldrich.
Computer Systems 1 Fundamentals of Computing
Bus structures Unit objectives Describe the primary types of buses, and define interrupt, IRQ, I/O address, DMA, and base memory address Describe the features.
ConfidentialPage 1 N480GTX/N470GTX Saleskit by Kiner Liu/DPS Marketing / Version 0.9.
CuMAPz: A Tool to Analyze Memory Access Patterns in CUDA
Shared memory systems. What is a shared memory system Single memory space accessible to the programmer Processor communicate through the network to the.
1 The Performance Potential for Single Application Heterogeneous Systems Henry Wong* and Tor M. Aamodt § *University of Toronto § University of British.
Computationally Efficient Histopathological Image Analysis: Use of GPUs for Classification of Stromal Development Olcay Sertel 1,2, Antonio Ruiz 3, Umit.
Havok. ©Copyright 2006 Havok.com (or its licensors). All Rights Reserved. HavokFX Next Gen Physics on ATI GPUs Andrew Bowell – Senior Engineer Peter Kipfer.
BY: ALI AJORIAN ISFAHAN UNIVERSITY OF TECHNOLOGY 2012 GPU Architecture 1.
Christopher Mitchell CDA 6938, Spring The Discrete Cosine Transform  In the same family as the Fourier Transform  Converts data to frequency domain.
Unit 2 - Hardware Graphics Cards. Why do we need graphics cards? ● The processor executes commands for many different purposes. ● Graphics processing.
GPUs and Accelerators Jonathan Coens Lawrence Tan Yanlin Li.
Nick Sims Like a motherboard, a graphics card is a printed circuit board that houses a processor and RAM.
Chris Kerkhoff Matthew Sullivan 10/16/2009.  Shaders are simple programs that describe the traits of either a vertex or a pixel.  Shaders replace a.
Complete CompTIA A+ Guide to PCs, 6e Chapter 2: On the Motherboard © 2014 Pearson IT Certification
1 Dr. Scott Schaefer Programmable Shaders. 2/30 Graphics Cards Performance Nvidia Geforce 6800 GTX 1  6.4 billion pixels/sec Nvidia Geforce 7900 GTX.
Hardware. Make sure you have paper and pen to hand as you will need to take notes and write down answers and thoughts that you can refer to later on.
A Closer Look At GPUs By Kayvon Fatahalian and Mike Houston Presented by Richard Stocker.
Lecture 25 PC System Architecture PCIe Interconnect
Havok FX Physics on NVIDIA GPUs. Copyright © NVIDIA Corporation 2004 What is Effects Physics? Physics-based effects on a massive scale 10,000s of objects.
Sony PlayStation 3 Sony also laid out the technical specs of the device. The PlayStation 3 will feature the much-vaunted Cell processor, which will run.
GPUs – Graphics Processing Units Applications in Graphics Processing and Beyond COSC 3P93 – Parallel ComputingMatt Peskett.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 5A Transforming Data Into Information.
THE MICROPROCESSOR A microprocessor is a single chip of silicon that performs all of the essential functions of a computer central processor unit (CPU)
A comparison of the current types of Video Ram By: Zachary Kessler
From Turing Machine to Global Illumination Chun-Fa Chang National Taiwan Normal University.
G043 – Lecture 03 Motherboards and Processors Mr C Johnston ICT Teacher
GPGPU introduction. Why is GPU in the picture Seeking exa-scale computing platform Minimize power per operation. – Power is directly correlated to the.
3/12/2013Computer Engg, IIT(BHU)1 CUDA-3. GPGPU ● General Purpose computation using GPU in applications other than 3D graphics – GPU accelerates critical.
GPU Computing for GIS James Mower Department of Geography and Planning University at Albany.
Graphic Processing Units Presentation by John Manning.
NVIDIA® TESLA™ GPU Based Super Computer By : Adam Powell Student # For COSC 3P93.
Computer Graphics Graphics Hardware
PC Components Microprocessor - performs all computations RAM - larger RAM memory contains more data Motherboard - holds all the above components Ports.
GPU Architecture and Its Application
Memory P2 Understand hardware technologies for game platforms
Graphics Processor Graphics Processing Unit
COMPUTER GRAPHICS CHAPTER 38 CS 482 – Fall 2017 GRAPHICS HARDWARE
Programmable Shaders Dr. Scott Schaefer.
Video RAM Presented by GHOLAMREZA KAKAMANSHADI
Graphics Processing Unit
From Turing Machine to Global Illumination
Graphics Processor Graphics Processing Unit
Memory P2 Understand hardware technologies for game platforms
1.1 The Characteristics of Contemporary Processors, Input, Output and Storage Devices Types of Processors.
Computer Graphics Graphics Hardware
Graphics Processing Unit
Presentation transcript:

Computer Graphics Graphics Hardware CO2409 Computer Graphics Week 12

Lecture Contents Graphics Architecture Processing: Memory: GPU vs CPU Memory: Video Memory vs System Memory Hardware Comparisons Motherboard Interface Parallelism / Concurrency

Graphics Architecture The basic graphics architecture for all modern PCs and game consoles is similar: Two key parts: Main System Graphics Unit Local RAM for each processor Fast access Interface between components slow Compared to local access

Graphics Unit The graphics unit describes the graphics processing components of a system PC: usually a separate graphics card Console: built-in custom components The core of a graphics unit is the Graphics Processing Unit (GPU) Occasionally called a Graphics Adapter Equivalent of a CPU for graphics PS4 GPU

Graphics Unit The graphics unit also contains: Local RAM (a.k.a. video memory, VRAM, etc.) Output sockets for monitor, TV etc. Can be integrated into the motherboard Consoles, some PC’s and laptops Attached via an interface: PCs use PCI Express sockets Can connect several together (SLI or Crossfire) for more parallelism NVidia GeForce GTX 980 Graphics Cards [Four connected by SLI]

GPU vs CPU A GPU is a dedicated graphics processor Much more parallel than a typical CPU i.e. Many more cores (100s or 1000s compared to 4-8 on a CPU) Much faster than CPU for graphics algorithms Particularly vector/matrix operations But worse at general operations, esp. conditional instructions Driven a programmable pipeline (shaders) Can now perform some general programming using the flexibility of this – GPGPU programming (General Purpose GPU) Power of a GPU is measured by its: Clock speed Parallelism. E.g. number of simultaneous shader, texture and output operations

Graphics Memory Many graphics units have local memory To store vertices, primitives and textures for the GPU This memory is similar to standard CPU memory Usually more closely coupled to the GPU I.e. Bandwidth to the GPU will be greater Graphics memory can be measured by: Clock speed (how fast can it serve data) Bandwidth to the GPU (clock speed * width of the bus between graphics memory and the GPU) Some GPUs have no dedicated memory Must share memory with the CPU This can be a benefit or a penalty…

Graphics vs System Memory GPUs can usually access system memory i.e. CPU-local memory Bandwidth is often lower Usually better to have graphics data in GPU memory System memory can be used as a back-up But expect lag if relied on too heavily Some architectures share CPU & GPU memory Xbox 360 / One / PS4: entire console architecture designed around this sharing – performance is high On-board video cards: Lack of GPU memory is a cost-cutting feature – memory access is slow

Graphics Unit - Specifications The key specifications for a graphics unit are: GPU clock speed (MHz ) – speed of processor Amount of Memory (Mb) Memory clock speed (MHz / GHz) GPU<-> Memory Bandwidth (GB / s) Speed of transfers between GPU and local memory, determined by memory clock speed and bus width Other factors to take into account: Pixel / Texture Fill Rate (Giga-Pixels / s) Speed it can output pixels to screen or textures Amount of parallelism in the pipeline E.g. Number of shader threads/cores – how many vertices / pixels can be processed at the same time

Historical Comparison (Indicative) Platform PS2 XBox Xbox 360 PS3 Xbox One PS4 GeForce GTX 680 GTX 980 CPU / GPU Clock (MHz) 294/147 733/233 3 x 3200 / 500 1+7x3200 / 500 8x1750 / 853 8x1600 / 800 - / 1058 - / 1216 CPU / GPU Memory (Mb) 32 / 4 64 (Shared) 512 (Shared) 256 / 256 8000 (Shared) - / 2048 - / 4096 Memory Clock (MHz) ? 200 700 650 2133 (GDDR3) 5500 (GDDR5) 6000 7000 Memory Bus (GB/s) 3.2 / 48 6.4 22.4 20.8 / 22.4 68 / 102x2 176 192 224 Pixel / Texture Fill Rate (GPx/s) ? / 0.932 ? / 4 (No AA) 12.8 / 40.9 25.6 / 57.6 128.8 144 Parallelism - 4 / 2 Shader 48 Shader 24 / 8 Shader 768 Cores 1152 Cores 1536 Cores 2048 Cores

GPU / System Interface It is faster to keep graphics data local to the GPU But the CPU and system memory still need to interface with the graphics unit: To get data into the graphics memory To issue instructions to the GPU (DrawPrimitive) For dynamic geometry / textures So the interface between the graphics unit and the rest of the system is critical Games consoles have the graphics unit built into the motherboard and so are closely coupled E.g. Xbox 360/One, & PS3/4 have fairly symmetrical performance between GPU, CPU & memory

PC Graphics Interfaces Interface between system and GPU on PC: PCI Express Uses serial ‘lanes’ to transfer streams of data in parallel Version 3 supports 1GB/s transfer rates (theoretical). Version 4 specs are being finalised Has superseded the earlier interfaces AGP & PCI But still can be a bottleneck (Console memory bus much faster) Slow compared to local GPU memory PCs must rely on more graphics memory

Parallelism / Concurrency GPUs are parallel architectures Processing many pixels / vertices at the same time A graphics application is typically a concurrent system Graphics rendered while main application does other processing Concurrent = different tasks performed simultaneously Parallel = the same task split up and performed simultaneously Need to program carefully to get best performance: Ensure both CPU and GPU working all the time Neither should be waiting for the other to complete its current task But watch out for problems with shared data Implications about programming graphics applications Games students will see this in the 3rd year

General Purpose GPU A GPU is a massively parallel processor Especially for vector maths operations So it can be used for certain non-graphics tasks Physics simulation, video processing, weather forecasting, etc. Anything with massive amounts of mathematical calculation Called General Purpose GPU processing (GPGPU) Several APIs for this: CUDA (from NVidia) Extension to C language Up to 40 times faster than same code on CPU OpenCL for ATI and NVidia platforms Compute Shaders as part of DirectX11