ATI GPUs and Graphics APIs Mark Segal. ATI Hardware X1K series 8 SIMD vertex engines, 16 SIMD fragment (pixel) engines 3-component vector + scalar ALUs.

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS SOFTWARE.
Advertisements

Is There a Real Difference between DSPs and GPUs?
A Micro-benchmark Suite for AMD GPUs Ryan Taylor Xiaoming Li.
DSPs Vs General Purpose Microprocessors
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.
Instructor Notes We describe motivation for talking about underlying device architecture because device architecture is often avoided in conventional.
Graphics Hardware CMSC 435/634. Transform Shade Clip Project Rasterize Texture Z-buffer Interpolate Vertex Fragment Triangle A Graphics Pipeline.
Prepared 5/24/2011 by T. O’Neil for 3460:677, Fall 2011, The University of Akron.
GPU Virtualization on VMware’s Hosted I/O Architecture Micah Dowty Jeremy Sugerman USENIX WIOV
CS-378: Game Technology Lecture #9: More Mapping Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica.
Graphics Hardware and Software Architectures
The Programmable Graphics Hardware Pipeline Doug James Asst. Professor CS & Robotics.
Dynamic Warp Formation and Scheduling for Efficient GPU Control Flow Wilson W. L. Fung Ivan Sham George Yuan Tor M. Aamodt Electrical and Computer Engineering.
Control Flow Virtualization for General-Purpose Computation on Graphics Hardware Ghulam Lashari Ondrej Lhotak University of Waterloo.
1 Shader Performance Analysis on a Modern GPU Architecture Victor Moya, Carlos González, Jordi Roca, Agustín Fernández Jordi Roca, Agustín Fernández Department.
© David Kirk/NVIDIA and Wen-mei W. Hwu, ECE408, University of Illinois, Urbana-Champaign 1 Programming Massively Parallel Processors Chapter.
GPU Simulator Victor Moya. Summary Rendering pipeline for 3D graphics. Rendering pipeline for 3D graphics. Graphic Processors. Graphic Processors. GPU.
A Real-Time Procedural Shading System for Programmable Graphics Hardware Kekoa Proudfoot William R. Mark Svetoslav Tzvetkov Pat Hanrahan.
Compilation, Architectural Support, and Evaluation of SIMD Graphics Pipeline Programs on a General-Purpose CPU Mauricio Breternitz Jr, Herbert Hum, Sanjeev.
Interactive k-D Tree GPU Raytracing Daniel Reiter Horn, Jeremy Sugerman, Mike Houston and Pat Hanrahan.
Status – Week 260 Victor Moya. Summary shSim. shSim. GPU design. GPU design. Future Work. Future Work. Rumors and News. Rumors and News. Imagine. Imagine.
Graphics Processors CMSC 411. GPU graphics processing model Texture / Buffer Texture / Buffer Vertex Geometry Fragment CPU Displayed Pixels Displayed.
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
Under the Hood: 3D Pipeline. Motherboard & Chipset PCI Express x16.
Emotion Engine A look at the microprocessor at the center of the PlayStation2 gaming console Charles Aldrich.
CSE 690: GPGPU Lecture 4: Stream Processing Klaus Mueller Computer Science, Stony Brook University.
Antigone Engine Kevin Kassing – Period
CHAPTER 4 Window Creation and Control © 2008 Cengage Learning EMEA.
GPGPU Ing. Martino Ruggiero Ing. Andrea Marongiu
Codeplay CEO © Copyright 2012 Codeplay Software Ltd 45 York Place Edinburgh EH1 3HP United Kingdom Visit us at The unique challenges of.
1 The Performance Potential for Single Application Heterogeneous Systems Henry Wong* and Tor M. Aamodt § *University of Toronto § University of British.
Havok. ©Copyright 2006 Havok.com (or its licensors). All Rights Reserved. HavokFX Next Gen Physics on ATI GPUs Andrew Bowell – Senior Engineer Peter Kipfer.
Computer Graphics Graphics Hardware
GPUs and Accelerators Jonathan Coens Lawrence Tan Yanlin Li.
Cg Programming Mapping Computational Concepts to GPUs.
CS 480/680 Intro Dr. Frederick C Harris, Jr. Fall 2014.
A Reconfigurable Architecture for Load-Balanced Rendering Graphics Hardware July 31, 2005, Los Angeles, CA Jiawen Chen Michael I. Gordon William Thies.
A Closer Look At GPUs By Kayvon Fatahalian and Mike Houston Presented by Richard Stocker.
CS662 Computer Graphics Game Technologies Jim X. Chen, Ph.D. Computer Science Department George Mason University.
Introduction to OpenGL  OpenGL is a graphics API  Software library  Layer between programmer and graphics hardware (and software)  OpenGL can fit in.
May 8, 2007Farid Harhad and Alaa Shams CS7080 Overview of the GPU Architecture CS7080 Final Class Project Supervised by: Dr. Elias Khalaf By: Farid Harhad.
A SEMINAR ON 1 CONTENT 2  The Stream Programming Model  The Stream Programming Model-II  Advantage of Stream Processor  Imagine’s.
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.
David Luebke 1 1/20/2016 Real-Time Rendering CS 446 David Luebke.
Von Neumann Computers Article Authors: Rudolf Eigenman & David Lilja
EKT303/4 Superscalar vs Super-pipelined.
Fateme Hajikarami Spring  What is GPGPU ? ◦ General-Purpose computing on a Graphics Processing Unit ◦ Using graphic hardware for non-graphic computations.
David Luebke 1 1/25/2016 Programmable Graphics Hardware.
© David Kirk/NVIDIA and Wen-mei W. Hwu, ECE408, University of Illinois, Urbana-Champaign 1 Programming Massively Parallel Processors Lecture.
From Turing Machine to Global Illumination Chun-Fa Chang National Taiwan Normal University.
Reduced Instruction Set Computing Ammi Blankrot April 26, 2011 (RISC)
Copyright © Curt Hill SIMD Single Instruction Multiple Data.
3/12/2013Computer Engg, IIT(BHU)1 CUDA-3. GPGPU ● General Purpose computation using GPU in applications other than 3D graphics – GPU accelerates critical.
My Coordinates Office EM G.27 contact time:
Martin Kruliš by Martin Kruliš (v1.0)1.
Computer Graphics Graphics Hardware
GPU Architecture and Its Application
Single Instruction Multiple Data
COMPUTER GRAPHICS CHAPTER 38 CS 482 – Fall 2017 GRAPHICS HARDWARE
Graphics Processing Unit
Introduction to OpenGL
From Turing Machine to Global Illumination
NVIDIA Fermi Architecture
Graphics Processing Unit
Computer Graphics Graphics Hardware
RADEON™ 9700 Architecture and 3D Performance
Introduction to OpenGL
CSE 502: Computer Architecture
CIS 6930: Chip Multiprocessor: GPU Architecture and Programming
Presentation transcript:

ATI GPUs and Graphics APIs Mark Segal

ATI Hardware X1K series 8 SIMD vertex engines, 16 SIMD fragment (pixel) engines 3-component vector + scalar ALUs X1900: 48 fragment ALU cores Dynamic flow control 256Mb, 512Mb configurations 650 MHz engine, 775 MHz memory (X1900 XTX)

X1K Fragment Processor Features Dynamic Flow Control Branching (IF…ELSE), Looping, Subroutines 128-bit (4 x 32) Floating-Point Processing For pixel and vertex shaders Longer Shaders (512 instructions) X1900 XT 120 Gflops peak compute (fragment processors only) 60 Gflops (measured) on dense matrix-matrix multiply

Threading When a fragment program hits a stall, switch to another fragment that’s ready to go E.g. texture read takes many cycles Latency hiding Many fragments in various stages of completion at any one time Multiple calculations in flight Requires storage for stalled fragments’ data Can use unused temporary registers if available Flow control

Graphics Programming Interfaces Provide software interface to graphics hardware Lowest level: Expose full functionality of hardware at full performance Hide device-specific details Limit interface changes generation to generation Higher levels: Simplify application programming E.g. for graphics: scene graph, shading languages Current interfaces aren’t so lowest-level anymore

New low-level interface Distinguish two characteristics Data path, routing, memory parallel data processors Expose Programmability; jettison fixed function Machine language Compiler for higher-level languages Use libraries Expose memory capabilities and routing Stripped-down interface Command Processor Vertex Processor Rasterizer Fragment Processor Per-Pixel Operations Graphics Memory host P P P F F P: programmable F: fixed

Compare with OpenGL No Begin/End or immediate mode No vertex transform No texture environment OpenGL is an application layered on this Benefit: simplified driver Much less state management No software path Better support, faster addition of new features Better match to GPGPU Benefit: greater control over memory usage

Conclusion Good image quality requires lots of computation Recent GPUs have lots of computational power Don’t forget details, like memory Starting to see use for effects in games games still drive the market, and they always need more performance Current graphics APIs aren’t quite up to the task of presenting the hardware’s computational abilities outside of graphics

Games and Numerical Applications Game physics Collision detection, rigid body dynamics, particle systems, fluid (water) simulation, cloth and hair, etc. Collision detection + response “shaders” Game play physics vs. effects physics Game play physics affects game outcome Effects physics affects display only E.g. water, trees, rubble, cloth and hair