Bringing it all together: The challenge in delivering a complete graphics system architecture. Chris Porthouse

Similar documents
POWERVR MBX & SGX OpenVG Support and Resources

ARM Mali -400 MP. The Scalable Multicore Graphics Processing Unit. Under embargo until June 2 nd, 2008

Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications

Applications and Implementations

Whiz-Bang Graphics and Media Performance for Java Platform, Micro Edition (JavaME)

Dave Shreiner, ARM March 2009

Copyright Khronos Group, Page 1

Understanding M3G 2.0 and its Effect on Producing Exceptional 3D Java-Based Graphics. Sean Ellis Consultant Graphics Engineer ARM, Maidenhead

Mobile Performance Tools and GPU Performance Tuning. Lars M. Bishop, NVIDIA Handheld DevTech Jason Allen, NVIDIA Handheld DevTools

Multimedia in Mobile Phones. Architectures and Trends Lund

Enabling a Richer Multimedia Experience with GPU Compute. Roberto Mijat Visual Computing Marketing Manager

Applications and Implementations

ARM Multimedia IP: working together to drive down system power and bandwidth

SIGGRAPH Briefing August 2014

Copyright Khronos Group, Page 1

HTML5 Evolution and Development. Matt Spencer UI & Browser Marketing Manager

Adding Advanced Shader Features and Handling Fragmentation

OpenMAX AL, OpenSL ES

3D Graphics in Future Mobile Devices. Steve Steele, ARM

Profiling and Debugging Games on Mobile Platforms

Next Generation OpenGL Neil Trevett Khronos President NVIDIA VP Mobile Copyright Khronos Group Page 1

Copyright Khronos Group Page 1

Copyright Khronos Group Page 1. Vulkan Overview. June 2015

Falanx Microsystems. Company Overview

Coming to a Pixel Near You: Mobile 3D Graphics on the GoForce WMP. Chris Wynn NVIDIA Corporation

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD

Module Introduction. Content 15 pages 2 questions. Learning Time 25 minutes

Grafica Computazionale: Lezione 30. Grafica Computazionale. Hiding complexity... ;) Introduction to OpenGL. lezione30 Introduction to OpenGL

Khronos and the Mobile Ecosystem

The Handheld Graphics. Market. Size, needs, and opportunities. Jon Peddie Research

Overview. Technology Details. D/AVE NX Preliminary Product Brief

Coding OpenGL ES 3.0 for Better Graphics Quality

Mobile AR Hardware Futures

Streaming Media. Advanced Audio. Erik Noreke Standardization Consultant Chair, OpenSL ES. Copyright Khronos Group, Page 1

Mali Developer Resources. Kevin Ho ARM Taiwan FAE

Mobile Graphics Ecosystem. Tom Olson OpenGL ES working group chair

Graphics Performance Optimisation. John Spitzer Director of European Developer Technology

Completing the Multimedia Architecture

Optimizing and Profiling Unity Games for Mobile Platforms. Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June

Copyright Khronos Group, Page 1

The Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006

Copyright Khronos Group, Page 1. Khronos Overview. Taiwan, February 2012

! Readings! ! Room-level, on-chip! vs.!

Accelerating Realism with the (NVIDIA Scene Graph)

Graphics Hardware. Graphics Processing Unit (GPU) is a Subsidiary hardware. With massively multi-threaded many-core. Dedicated to 2D and 3D graphics

AR Standards Update Austin, March 2012

Hands-On Workshop: 3D Automotive Graphics on Connected Radios Using Rayleigh and OpenGL ES 2.0

Building scalable 3D applications. Ville Miettinen Hybrid Graphics

Mobile graphics API Overview

A Bandwidth Effective Rendering Scheme for 3D Texture-based Volume Visualization on GPU

PowerVR Hardware. Architecture Overview for Developers

Mobile HW and Bandwidth

Hardware-driven Visibility Culling Jeong Hyun Kim

Copyright Khronos Group, Page Graphic Remedy. All Rights Reserved

LPGPU Workshop on Power-Efficient GPU and Many-core Computing (PEGPUM 2014)

The Bifrost GPU architecture and the ARM Mali-G71 GPU

WebGL. Announcements. WebGL for Graphics Developers. WebGL for Web Developers. Homework 5 due Monday, 04/16. Final on Tuesday, 05/01

EECS 487: Interactive Computer Graphics

Open API Standards for Mobile Graphics, Compute and Vision Processing GTC, March 2014

Open Server Architecture

WebGL Meetup GDC Copyright Khronos Group, Page 1

Why modern versions of OpenGL should be used Some useful API commands and extensions

Free Downloads OpenGL ES 3.0 Programming Guide

Tips and Tricks: Designing low power Native and WebApps. Harita Chilukuri and Abhishek Dhanotia

Achieving High-performance Graphics on Mobile With the Vulkan API

Copyright Khronos Group, Page 1. OpenCL. GDC, March 2010

NVSG NVIDIA Scene Graph

Creating the Embedded Media Processing Ecosystem

Introduction to creating 3D UI with BeagleBoard. ESC-341 Presented by Diego Dompe

GeForce3 OpenGL Performance. John Spitzer

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

Embedded Media Processing Ecosystem

Challenges for GPU Architecture. Michael Doggett Graphics Architecture Group April 2, 2008

Graphics Hardware. Instructor Stephen J. Guy

Hiroyuki Kobota Director Principal Engineer. Alex Adjadj Director Global Strategic Development & Mobile Sales

Ciril Bohak. - INTRODUCTION TO WEBGL

Optimizing Games for ATI s IMAGEON Aaftab Munshi. 3D Architect ATI Research

GPGPU. Peter Laurens 1st-year PhD Student, NSC

Mali-400 MP: A Scalable GPU for Mobile Devices Tom Olson

Lecture 25: Board Notes: Threads and GPUs

Blink: 3D Display Multiplexing for Virtualized Applications

Copyright Khronos Group 2012 Page 1. Teaching GL. Dave Shreiner Director, Graphics and GPU Computing, ARM 1 December 2012

The Mobile Internet: The Potential of Handhelds to Bring Internet to the Masses. April 2008

Graphics Architectures and OpenCL. Michael Doggett Department of Computer Science Lund university

The PowerVR Insider SDK. PowerVR Developer Technology

Windowing System on a 3D Pipeline. February 2005

WebGL (Web Graphics Library) is the new standard for 3D graphics on the Web, designed for rendering 2D graphics and interactive 3D graphics.

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer

GoForce 3D: Coming to a Pixel Near You

Using the PowerVR SDK to Optimize your Renderer

Real - Time Rendering. Graphics pipeline. Michal Červeňanský Juraj Starinský

OpenGL BOF Siggraph 2011

WebGL. WebGL. Bring 3D to the Masses. WebGL. The web has text, images, and video. We want to support. Put it in on a webpage

Real - Time Rendering. Pipeline optimization. Michal Červeňanský Juraj Starinský

Course Recap + 3D Graphics on Mobile GPUs

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014

X. GPU Programming. Jacobs University Visualization and Computer Graphics Lab : Advanced Graphics - Chapter X 1

ArcGIS Runtime: Maximizing Performance of Your Apps. Will Jarvis and Ralf Gottschalk

Bifrost - The GPU architecture for next five billion

Creating outstanding digital cockpits with Qt Automotive Suite

Transcription:

Bringing it all together: The challenge in delivering a complete graphics system architecture Chris Porthouse

System Integration & the role of standards Content Ecosystem Java Execution Environment Native Environment JSR184 3D Midlets JSR239 JSR297 2D/VG Midlet Media Midlet JSR226 JSR287 JSR135 JSR234 Java VM SVGt Native App Flash MIDI OpenKode 3D Audio Content Creation Tools OS/RTOS HAL Audio & Video Codecs TrustZone Framework ARM CPU Mali GPU Video H/W Audio Accel Standards aimed at reducing fragmentation Does compliance alone guarantee a high performance system? Where do we need standards? Where do we need innovation & differentiation?

System Integration Challenges System integration of hardware and software Achieve effective communication with minimal bottlenecks Integrate hardware components from different suppliers Middleware stacks from alternate suppliers The solution open standard APIs? Avoid PC graphics standards war Khronos, Java Community Process, LiMO, OMTP There are still issues to be solved Many variants/implementations of APIs? Not always working reliably Quality issues Integration issues causing performance bottlenecks in s/w

Legacy Graphics - SoC Configuration Push style architecture: CPU to GPU via dedicated channel Each rendering step pushed to GPU GPU dependent on CPU for vertex data CPU dependant on memory for app and scene data GPU dependent on memory for texture & frame buffer data Requires all GPU stages at full speed Even if not received data yet OS CPU App OpenGL ES DRAM TnL & Triangle setup Depth/Z Processor GPU Arbiter Rasteriser Pixel Processor Inefficient processing leads to extra power consumption = lower battery life Load balancing this architecture is difficult

Improved Graphics - SoC Configuration UI requires limited geometry processing All about power/performance CPU de-coupled from GPU or process the geometry on CPU Intermediate processing decoupled Main memory is source of all data While GPU rendering frame, CPU free to generate next frame Decoupling means no lock ups Power save mode recovery faster Each element in processing chain can free run, idle or shut down depending on load All structures in main memory CPU App OS OpenGL ES DRAM TnL & Triangle setup GPU Arbiter Rasteriser Depth/Z Processor Pixel Processor Benefits power savings and cost efficient performance Scaleable architecture from low geometry UI to high performance games

Software integration challenges High quality, high performance drivers required Fast & efficient shader compiler, efficient hardware/software interface to maximize throughput Poor quality OpenGL-ES driver can result in s/w-only performance higher than h/w accelerated! Tight integration of high quality, high performance middleware and APIs Java (JSR184, JSR297, JSR226), Flash/OpenVG 3D Applications 2D Applications M3G M3G 1.1 / 2.0 2.0 (JSR-297) (JSR-184/297) Java bindings for OpenGL ES (JSR-239) JSR-226 SVGt 1.2 OpenGL ES 1.1 / 2.0 Direct3D Mobile OpenVG 1.0 GPU CPU Fabric IP Physical IP

Composition Efficiency in Java 2D background Render multi-source & multi-format displays Without major increase in memory & power 3D scene HI Score! 2D overlay HI Score! Java allows 2D and 3D to be combined in an image Historically all done in software A lot of GL-ES hardware not designed with Java in mind Can be worked around in software but Reduced performance, excessive copying of screen buffers

Composition complexity increasing Multi Layered Alpha Effects On composition Per pixel effects Composition of multiple API outputs Synchronized update of mixed media Becoming too complex to handle with software workarounds JSR287 allows video as part of 2D vector graphics JSR297 allows dynamic textures (e.g. streaming video) as part of 3D scene

Handling Composition Efficiency Composition efficiency being addressed in closed systems E.g. iphone, N95 browser How to integrate with 3 rd party applications? Higher level API s (OpenVG/OpenGL ES)? Overkill for most composition use cases Difficult to manipulate GPU efficiently via higher level API s Currently no mechanism for co-ordinating multiple surface updates New WG aims to provide common API for composition Simple API for windowing systems to drive composition More efficient control of composition tasks Additions to existing management API to assist

Summary Fragmentation - number 1 issue facing developers Standards are key to reducing fragmentation and lowering cost Hardware Differentiation CPU, GPU and bus integration to make ASIC easier to use Get power/performance ratio right for target market Software Differentiation Performance and quality of software is critical Tight integration with upper software stack (Java and native engines) Challenge is bringing this all together Removing fragmentation through standards Encouraging differentiation only if it delights consumers or reduces cost/risk Longer battery life, makes device easier to use, device visually appealing etc High quality and tight integration means faster time to market and no costly recalls Strong partnerships and understanding of whole developer community required Developers, carriers, OEMs, OS & middleware vendors, ASIC suppliers Ensure high quality, high performance integrated solutions