LPGPU2 Font Renderer App

Size: px
Start display at page:

Download "LPGPU2 Font Renderer App"

Transcription

1 LPGPU2 Font Renderer App Performance Analysis 2 Introduction As part of LPGPU2 Work Package 3, a font rendering app was developed to research the profiling characteristics of different font rendering algorithms. Screenshots of the app in Figure 1 show a quantitative difference in the three rendering modes. This is because the Font Renderer app was developed to investigate the disparity in CPU versus GPU utilisation for different algorithms, and not as a tool for the inter-comparison of those algorithms per se. More details can be found in D3.1. Since its initial development, the LPGPU2 Profiling tool has many new features and capabilities; the Font Renderer app was updated to leverage this, and the process of updating the app is described elsewhere. The LPGPU2 Font Renderer app offers three modes of operation: SKIA (the default CPU based android implementation), Loop-Blinn (an efficient GPU font rendering method developed by Charles Loop and Jim Blinn), and Stencil and Cover (the Loop-Blinn method drawn to the Stencil buffer and post coloured with large triangles spanning the display area). The present study focuses on SKIA the android default method, and Loop-Blinn, a geometrical technique target at the GPU. a) SKIA b) Loop-Blinn c) Stencil and Cover Figure 1 Font Rendering Modes

2 Analysis: SKIA The LPGPU2 Profiling Tool was used to collect data for SKIA mode in two separate experiments. Experience in profiling many apps throughout LPGPU2 has shown the need for repeat experiments, as more often than not, results vary wildly between runs. This is because the device system is complex with many demands on its resources, multiple daemons running, and timed events firing off all the time. At first glance, the resulting profiles from the two SKIA experiments, shown in Figure 2, seem to be very similar indeed; an initial burst of power settles to an asymptotic level, while load and frequency remain flat. However, on closer inspection, the power scales are quite different. The first experiment levels off at around 100mA while the second experiment settles at around 200mA. a) First SKIA counters profile b) Second SKIA counters profile Figure 2 Profiling experiments in SKIA mode

3 Looking deeper at the two profiles reveals more: during the first experiment, only three CPU cores are being utilised, whereas in the second experiment all four are busy. This is not a characteristic of the app, but something to do with the Android system. The situation is made clear from the instantaneous view to the right hand side of the profiling tool screen shown in figure 3. a) Four cores utilised c) Full view of the LPGPU2 Profiling Tool b) Only three CPU cores utilised Figure 3 CPU core load graphs and selection boxes in context with the main tool Analysis: Loop-Blinn The Loop-Blinn algorithm by Charles Loop and Jim Blinn is a combination of splitting the font into a set of triangles covering each font glyph. The vertices of those triangles coincide with the edges of the glyph and a fragment shader algorithm renders the actual curves. Because of this, the font can be rendered directly on the GPU without recourse to blitting textures prepared on the CPU. Figure 4 shows a baseline profile of an implementation of Loop-Blinn in the LPGPU2 Font Renderer app. Figure 4 Font rendering with Loop-Blinn.

4 The profile shows similar characteristics to the SKIA app an initial burst of activity evidenced by high CPU core frequency and load, power consumption and cluster temperatures followed by a drop in the frequencies and related counters. The green coloured vertical bars near the top of the profile are individual clickable frames. These are available because capturing API call traces was selected for this experiment. When traces are available, the Feedback Engine has much more to work with. To keep the LPGPU2 Profiling Tool as intuitive as possible, only feedback options which make sense are offered to the user. Two different feedback dialogs are shown in Figure 5. Their configuration depends on the available data. a) Feedback Engine dialog when API traces are not available b) Feedback Engine dialog when API traces are available Figure 5 Different Feedback Engine Dialogs (with sensible defaults)

5 As with SKIA, a number of experiments were performed in Loop-Blinn mode and Figure 6 shows two of these. a) Loop-Blinn experiment 1 b) Loop-Blinn experiment 2 Figure 6 Loop-Blinn font rendering profiling experiments Because feedback is available, the Feedback Engine was run. This resulted in a number of regions being identified. Figure 7 shows the Profiling Tool after the Feedback Engine has been run. The individual frames are still visible and clickable but now a number of bright green sections are present in the display, and these correspond to the regions identified by the Feedback Engine. The timeline at the top of the GUI can be zoomed to an area that has too much detail to visualise otherwise. Figure 7 Regions generated by the Feedback Engine

6 Frames and Regions are clickable to display a finer level of relevant detail. Clicking on a region creates a new tab for that region of interest. Clicking on a frame also creates a new tab for that frame. Figure 8 shows a regions sub-tab. Figure 8 A region sub-tab for Region Of Interest (ROI) number 8 The timeline now displays the timeline for that region. A list box shows the longest running calls, and a pie chart shows the type of calls in the frame. The region shown involves mainly draw calls, as we would expect for this kind of application. Another list box shows annotations high level analysis statements to highlight issues with the app, globally, per region, or even for individual frames. In this view, the timeline is fixed to the region bounds, and the frames along the timeline are all the frames in this region. It is possible to drill down in to those by clicking on them. As with regions, each time a frame is clicked, a new sub-tab is opened under the Frame Details tab. Figure 9 shows a frame data from a Loop-Blinn run. At this level of detail, the timeline displays individual calls. All API calls from this frame are shown on the left of the screen and approximate counter values are listed on the right. The reason they are approximate is that the counter sampling frequency will not, in general, line up with the frame rate which may itself be sporadic. Because of this, counter values must be interpolated between samples. The start and end times of each API call are available and also, for convenience, is the duration of each call. Finally, a button at the bottom of the screen helps the user to navigate back to the Region of Interest this frame comes from.

7 Figure 9 A typical frame from Loop-Blinn mode in the LPGPU2 Font Renderer app Analysis: Stencil and Cover The Stencil and Cover mode is a contrived method using Loop-Blinn to render into the stencil buffer and then using two large triangles to draw through the stencil to frame buffer, revealing the text. In practice, it has a very low framerate and cannot be used to inform the other methods, and will not at this stage be investigated further. Figure 10 shows a profile from Stencil and Cover mode. Figure 10 Profile collected from Stencil and Cover mode experiment

8 Further Analysis: Performance Rendering is a compute intensive task, but when an application also has to marshal every single API call, return value and parameters, and transmit that data over the network, a significant processing burden is added to each frame. If an application is particularly intensive, it might not even be possible to run with all profiling options turned on or even at all. To expose the performance characteristics of each rendering mode, we need to have them working as hard as possible, and that means we need as little overhead as possible in the API shim. To achieve this, we make use of the fact that the LPGPU2 Profiling Tool can capture some data with no app running at all. This is possible because counter data are aspects of the device and not of the app. The data we seek for this analysis are: Power Consumption, CPU Load and Frequency, Processor Temperatures, etc. By using this profiling method, it was possible to drive the apps very hard indeed, as the shim was effectively passing calls straight through to the underlying API with no overhead. Figure 11 shows data collected in SKIA and Loop-Blinn modes via this method for two runs. The number of iterations (i.e. the number of strings rendered) was raised to the maximum: 8000 strings per frame without ill effects. a) SKIA run 1 b) SKIA run 2 c) Loop-Blinn run 1 d) Loop-Blinn run 2 Figure 11 SKIA and Loop-Blinn nodes collecting device counters only where the app is not connected to the LPGPU2 Profiling Tool

9 In all runs, 8000 iterations were used for both font rendering methods. The flat temperature section in each profile is the period during which the app was running in work mode. In all four runs, the two CPU clusters ran at slightly different temperatures, and for each of the two methods the GPU temperature tracked one of the clusters. The surprising thing is that we might have expected the Loop-Blinn method GPU temperature to track the higher value of the two clusters and the SKIA GPU temperature to track the lower cluster temperature, because Loop-Blinn is font rendering on the GPU whereas SKIA is font rendering on the CPU. Although it should also be noted that the temperature difference was small ~ 1 o C. The power consumed was very similar between methods. The Feedback Engine reported that NON GL work was the main cause for the length of the frame in both modes, so for more information we may need to revisit the code to analyse the cause. Conclusion The LPGPU2 Profiling Tool provided detailed counter data in both operation modes of interest: SKIA and Loop-Blinn. SKIA mode renders text on the CPU and Loop-Blinn renders text using the GPU. From the numerous experiments conducted, there was no significant difference between the two, as results from different runs of the same mode varied at least as much as the difference between the modes themselves. However, the LPGPU2 Feedback Engine identified that the main cause of the length of frames was NON GL work. This means that time was being consumed outside of the API calls an area not analysable by the engine. This tells us that a more detailed review of the code may reveal the cause of the extra processing time that currently unaccounted for in the API.

LPGPU2 Font Renderer App

LPGPU2 Font Renderer App LPGPU2 Font Renderer App Performance Analysis Introduction As part of LPGPU2 Work Package 3, a font rendering app was developed to research the profiling characteristics of different font rendering algorithms.

More information

Thread Affinity Experiments

Thread Affinity Experiments Thread Affinity Experiments Power implications on Exynos Introduction The LPGPU2 Profiling Tool and API provide support for CPU thread affinity locking and logging, and although this functionality is not

More information

Analyze and Optimize Windows* Game Applications Using Intel INDE Graphics Performance Analyzers (GPA)

Analyze and Optimize Windows* Game Applications Using Intel INDE Graphics Performance Analyzers (GPA) Analyze and Optimize Windows* Game Applications Using Intel INDE Graphics Performance Analyzers (GPA) Intel INDE Graphics Performance Analyzers (GPA) are powerful, agile tools enabling game developers

More information

Models and Architectures

Models and Architectures Models and Architectures Objectives Learn the basic design of a graphics system Introduce graphics pipeline architecture Examine software components for an interactive graphics system 1 Image Formation

More information

Tutorial: Analyzing MPI Applications. Intel Trace Analyzer and Collector Intel VTune Amplifier XE

Tutorial: Analyzing MPI Applications. Intel Trace Analyzer and Collector Intel VTune Amplifier XE Tutorial: Analyzing MPI Applications Intel Trace Analyzer and Collector Intel VTune Amplifier XE Contents Legal Information... 3 1. Overview... 4 1.1. Prerequisites... 5 1.1.1. Required Software... 5 1.1.2.

More information

Computer Graphics. Lecture 9 Environment mapping, Mirroring

Computer Graphics. Lecture 9 Environment mapping, Mirroring Computer Graphics Lecture 9 Environment mapping, Mirroring Today Environment Mapping Introduction Cubic mapping Sphere mapping refractive mapping Mirroring Introduction reflection first stencil buffer

More information

Profiling and Debugging Games on Mobile Platforms

Profiling and Debugging Games on Mobile Platforms Profiling and Debugging Games on Mobile Platforms Lorenzo Dal Col Senior Software Engineer, Graphics Tools Gamelab 2013, Barcelona 26 th June 2013 Agenda Introduction to Performance Analysis with ARM DS-5

More information

PVRTune. User Manual

PVRTune. User Manual Public Imagination Technologies PVRTune Copyright Imagination Technologies Limited. All Rights Reserved. This publication contains proprietary information which is subject to change without notice and

More information

Introduction to Computer Graphics with WebGL

Introduction to Computer Graphics with WebGL Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science Laboratory University of New Mexico Models and Architectures

More information

Displacement Mapping

Displacement Mapping HELSINKI UNIVERSITY OF TECHNOLOGY 16.4.2002 Telecommunications Software and Multimedia Laboratory Tik-111.500 Seminar on computer graphics Spring 2002: Rendering of High-Quality 3-D Graphics Displacement

More information

PVRTrace. User Manual

PVRTrace. User Manual Public Imagination Technologies PVRTrace Copyright Imagination Technologies Limited. All Rights Reserved. This publication contains proprietary information which is subject to change without notice and

More information

Deferred Rendering Due: Wednesday November 15 at 10pm

Deferred Rendering Due: Wednesday November 15 at 10pm CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture

More information

CS 4620 Program 3: Pipeline

CS 4620 Program 3: Pipeline CS 4620 Program 3: Pipeline out: Wednesday 14 October 2009 due: Friday 30 October 2009 1 Introduction In this assignment, you will implement several types of shading in a simple software graphics pipeline.

More information

Physically-Based Laser Simulation

Physically-Based Laser Simulation Physically-Based Laser Simulation Greg Reshko Carnegie Mellon University reshko@cs.cmu.edu Dave Mowatt Carnegie Mellon University dmowatt@andrew.cmu.edu Abstract In this paper, we describe our work on

More information

OUTLINE. Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system

OUTLINE. Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system GRAPHICS PIPELINE 1 OUTLINE Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system 2 IMAGE FORMATION REVISITED Can we mimic the synthetic

More information

RTOS 101. Understand your real-time applications. with the help of Percepio Tracealyzer

RTOS 101. Understand your real-time applications. with the help of Percepio Tracealyzer RTOS 101 Understand your real-time applications with the help of Percepio Tracealyzer RTOS 101 Tasks, Priorities and Analysis Figure 1: Tracealyzer showing RTOS task scheduling and calls to RTOS services.

More information

CS451Real-time Rendering Pipeline

CS451Real-time Rendering Pipeline 1 CS451Real-time Rendering Pipeline JYH-MING LIEN DEPARTMENT OF COMPUTER SCIENCE GEORGE MASON UNIVERSITY Based on Tomas Akenine-Möller s lecture note You say that you render a 3D 2 scene, but what does

More information

Using the PowerVR SDK to Optimize your Renderer

Using the PowerVR SDK to Optimize your Renderer Using the PowerVR SDK to Optimize your Renderer March, 2013 www.imgtec.com Imagination Technologies p1 First, an Introduction www.imgtec.com Imagination Technologies p2 Who are we? Who? Joe Davis, Developer

More information

PowerVR Series5. Architecture Guide for Developers

PowerVR Series5. Architecture Guide for Developers Public Imagination Technologies PowerVR Series5 Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.

More information

What s New in Spotfire DXP 1.1. Spotfire Product Management January 2007

What s New in Spotfire DXP 1.1. Spotfire Product Management January 2007 What s New in Spotfire DXP 1.1 Spotfire Product Management January 2007 Spotfire DXP Version 1.1 This document highlights the new capabilities planned for release in version 1.1 of Spotfire DXP. In this

More information

Lecture 25: Board Notes: Threads and GPUs

Lecture 25: Board Notes: Threads and GPUs Lecture 25: Board Notes: Threads and GPUs Announcements: - Reminder: HW 7 due today - Reminder: Submit project idea via (plain text) email by 11/24 Recap: - Slide 4: Lecture 23: Introduction to Parallel

More information

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0)

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0) Acceleration Techniques V1.2 Anthony Steed Based on slides from Celine Loscos (v1.0) Goals Although processor can now deal with many polygons (millions), the size of the models for application keeps on

More information

Vulkan Multipass mobile deferred done right

Vulkan Multipass mobile deferred done right Vulkan Multipass mobile deferred done right Hans-Kristian Arntzen Marius Bjørge Khronos 5 / 25 / 2017 Content What is multipass? What multipass allows... A driver to do versus MRT Developers to do Transient

More information

Fractal Dimension of Julia Sets

Fractal Dimension of Julia Sets Fractal Dimension of Julia Sets Claude Heiland-Allen claude@mathr.co.uk March 6, 2015 Fractal Dimension of Julia Sets Fractal Dimension How Long is a Coast? Box-Counting Dimension Examples Fractal Dimension

More information

Pipeline Operations. CS 4620 Lecture 14

Pipeline Operations. CS 4620 Lecture 14 Pipeline Operations CS 4620 Lecture 14 2014 Steve Marschner 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives

More information

The Graphics Pipeline

The Graphics Pipeline The Graphics Pipeline Ray Tracing: Why Slow? Basic ray tracing: 1 ray/pixel Ray Tracing: Why Slow? Basic ray tracing: 1 ray/pixel But you really want shadows, reflections, global illumination, antialiasing

More information

Figure 1 - How to open the camera

Figure 1 - How to open the camera DancePro User Manual DancePro User Manual Section 1 - Video Section 1.1 - Recording a Video Section 1.2 - Remote Recording a Video Section 1.3 - Importing a Video Section 2 - Video modes Section 3 - Annotations

More information

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic. Shading Models There are two main types of rendering that we cover, polygon rendering ray tracing Polygon rendering is used to apply illumination models to polygons, whereas ray tracing applies to arbitrary

More information

Shader Series Primer: Fundamentals of the Programmable Pipeline in XNA Game Studio Express

Shader Series Primer: Fundamentals of the Programmable Pipeline in XNA Game Studio Express Shader Series Primer: Fundamentals of the Programmable Pipeline in XNA Game Studio Express Level: Intermediate Area: Graphics Programming Summary This document is an introduction to the series of samples,

More information

4. Basic Mapping Techniques

4. Basic Mapping Techniques 4. Basic Mapping Techniques Mapping from (filtered) data to renderable representation Most important part of visualization Possible visual representations: Position Size Orientation Shape Brightness Color

More information

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

ArcGIS Runtime: Maximizing Performance of Your Apps. Will Jarvis and Ralf Gottschalk ArcGIS Runtime: Maximizing Performance of Your Apps Will Jarvis and Ralf Gottschalk Agenda ArcGIS Runtime Version 100.0 Architecture How do we measure performance? We will use our internal Runtime Core

More information

POWERVR MBX. Technology Overview

POWERVR MBX. Technology Overview POWERVR MBX Technology Overview Copyright 2009, Imagination Technologies Ltd. All Rights Reserved. This publication contains proprietary information which is subject to change without notice and is supplied

More information

Capstone Appendix. A guide to your lab computer software

Capstone Appendix. A guide to your lab computer software Capstone Appendix A guide to your lab computer software Important Notes Many of the Images will look slightly different from what you will see in lab. This is because each lab setup is different and so

More information

PVRHub. User Manual. Public Imagination Technologies

PVRHub. User Manual. Public Imagination Technologies Public Imagination Technologies PVRHub Copyright Imagination Technologies Limited. All Rights Reserved. This publication contains proprietary information which is subject to change without notice and is

More information

Introduction to Graphics Programming

Introduction to Graphics Programming Introduction to Graphics Programming This tutorial will introduce you to the concepts behind modern graphics programming, including how vertex data is turned into a fnal pixelated image. You ll be introduced

More information

Hardware-driven Visibility Culling Jeong Hyun Kim

Hardware-driven Visibility Culling Jeong Hyun Kim Hardware-driven Visibility Culling Jeong Hyun Kim KAIST (Korea Advanced Institute of Science and Technology) Contents Introduction Background Clipping Culling Z-max (Z-min) Filter Programmable culling

More information

Monitor Qlik Sense sites. Qlik Sense Copyright QlikTech International AB. All rights reserved.

Monitor Qlik Sense sites. Qlik Sense Copyright QlikTech International AB. All rights reserved. Monitor Qlik Sense sites Qlik Sense 2.1.2 Copyright 1993-2015 QlikTech International AB. All rights reserved. Copyright 1993-2015 QlikTech International AB. All rights reserved. Qlik, QlikTech, Qlik Sense,

More information

Could you make the XNA functions yourself?

Could you make the XNA functions yourself? 1 Could you make the XNA functions yourself? For the second and especially the third assignment, you need to globally understand what s going on inside the graphics hardware. You will write shaders, which

More information

PART I. The Lay of the Land. CHAPTER 1: Exploring SharePoint Designer

PART I. The Lay of the Land. CHAPTER 1: Exploring SharePoint Designer PART I RI AL The Lay of the Land CO PY RI GH TE D MA TE CHAPTER 1: Exploring SharePoint Designer 1Exploring SharePoint Designer WHAT YOU WILL LEARN IN THIS CHAPTER How SharePoint Designer fits into Microsoft

More information

PowerVR Hardware. Architecture Overview for Developers

PowerVR Hardware. Architecture Overview for Developers Public Imagination Technologies PowerVR Hardware Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.

More information

Computergrafik. Matthias Zwicker. Herbst 2010

Computergrafik. Matthias Zwicker. Herbst 2010 Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Bump mapping Shadows Shadow mapping Shadow mapping in OpenGL Bump mapping Surface detail is often the result of small perturbations in

More information

Power Measurements using performance counters

Power Measurements using performance counters Power Measurements using performance counters CSL862: Low-Power Computing By Suman A M (2015SIY7524) Android Power Consumption in Android Power Consumption in Smartphones are powered from batteries which

More information

Lesson 03: We will add water and will set the placing conditions for the material. WorldBuilder 3.5. for. About Digital Element Tutorials:

Lesson 03: We will add water and will set the placing conditions for the material. WorldBuilder 3.5. for. About Digital Element Tutorials: Lesson 03: We will add water and will set the placing conditions for the material for WorldBuilder 3.5 About Digital Element Tutorials: This tutorial is available both in.pdf format and in Qarbon format,

More information

Components for Xcelsius. Micro Components

Components for Xcelsius. Micro Components Components for Xcelsius Micro Components Inovista Micro Components for Xcelsius Inovista provides a full range of spark lines, micro charts, icons, text and shape indicators that can be deployed to create

More information

We start by providing you with an overview of the key feature of the IBM BPM Process Portal.

We start by providing you with an overview of the key feature of the IBM BPM Process Portal. Lab 1 Process Portal 1.1 Overview This lab exercise will make you familiar with the key capabilities of the ready-to-use Process Portal included with IBM Business Process Manager (BPM). You will experience

More information

Collecting OpenCL*-related Metrics with Intel Graphics Performance Analyzers

Collecting OpenCL*-related Metrics with Intel Graphics Performance Analyzers Collecting OpenCL*-related Metrics with Intel Graphics Performance Analyzers Collecting Important OpenCL*-related Metrics with Intel GPA System Analyzer Introduction Intel SDK for OpenCL* Applications

More information

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y. COMP 4801 Final Year Project Ray Tracing for Computer Graphics Final Project Report FYP 15014 by Runjing Liu Advised by Dr. L.Y. Wei 1 Abstract The goal of this project was to use ray tracing in a rendering

More information

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

ARM Multimedia IP: working together to drive down system power and bandwidth ARM Multimedia IP: working together to drive down system power and bandwidth Speaker: Robert Kong ARM China FAE Author: Sean Ellis ARM Architect 1 Agenda System power overview Bandwidth, bandwidth, bandwidth!

More information

XMReality 6. User Manual for Windows XMReality AB Teknikringen 10, 8 fl SE Linköping Sweden

XMReality 6. User Manual for Windows XMReality AB Teknikringen 10, 8 fl SE Linköping Sweden XMReality 6 User Manual for Windows - 6.3 1 XMReality AB Teknikringen 10, 8 fl SE-583 30 Linköping Sweden Introduction This is a user manual for XMReality Remote Guidance Generation 6 for Windows. An account

More information

Optimisation. CS7GV3 Real-time Rendering

Optimisation. CS7GV3 Real-time Rendering Optimisation CS7GV3 Real-time Rendering Introduction Talk about lower-level optimization Higher-level optimization is better algorithms Example: not using a spatial data structure vs. using one After that

More information

An Experiment in Visual Clustering Using Star Glyph Displays

An Experiment in Visual Clustering Using Star Glyph Displays An Experiment in Visual Clustering Using Star Glyph Displays by Hanna Kazhamiaka A Research Paper presented to the University of Waterloo in partial fulfillment of the requirements for the degree of Master

More information

Enterprise Architect. User Guide Series. Profiling

Enterprise Architect. User Guide Series. Profiling Enterprise Architect User Guide Series Profiling Investigating application performance? The Sparx Systems Enterprise Architect Profiler finds the actions and their functions that are consuming the application,

More information

Enterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH Enterprise Architect User Guide Series Profiling Author: Sparx Systems Date: 10/05/2018 Version: 1.0 CREATED WITH Table of Contents Profiling 3 System Requirements 8 Getting Started 9 Call Graph 11 Stack

More information

In this exercise, you will convert labels into geodatabase annotation so you can edit the text features.

In this exercise, you will convert labels into geodatabase annotation so you can edit the text features. Instructions: Use the provided data stored in a USB. For the report: 1. Start a new word document. 2. Follow an exercise step as given below. 3. Describe what you did in that step in the word document

More information

VISAV Ltd. 20/01/2015

VISAV Ltd. 20/01/2015 NEIGHBOURHOOD ALERT User Dashboard Help Manual VISAV Ltd. 20/01/2015 Documentation for the Neighbourhood Alert: User Dashboard. 1 Contents 1 Contents... 1 2 Overview... 2 3 Accessing the Dashboard... 2

More information

Computer Graphics Coursework 1

Computer Graphics Coursework 1 Computer Graphics Coursework 1 Deadline Deadline: 4pm, 24/10/2016 4pm 23/10/2015 Outline The aim of the coursework is to modify the vertex and fragment shaders in the provided OpenGL framework to implement

More information

PROFESSIONAL VR: AN UPDATE. Robert Menzel, Ingo Esser GTC 2018, March

PROFESSIONAL VR: AN UPDATE. Robert Menzel, Ingo Esser GTC 2018, March PROFESSIONAL VR: AN UPDATE Robert Menzel, Ingo Esser GTC 2018, March 26 2018 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 2 NVIDIA VRWORKS

More information

Intro to ETW tracing and OSVR. Ryan A. Pavlik, Ph.D. Senior Software Engineer, Sensics, Inc. August-September 2015

Intro to ETW tracing and OSVR. Ryan A. Pavlik, Ph.D. Senior Software Engineer, Sensics, Inc. August-September 2015 Intro to ETW tracing and OSVR Ryan A. Pavlik, Ph.D. Senior Software Engineer, Sensics, Inc. August-September 2015 What is Event Tracing for Windows? aka ETW, xperf, Windows Performance Toolkit (WPT), Windows

More information

Photorealistic 3D Rendering for VW in Mobile Devices

Photorealistic 3D Rendering for VW in Mobile Devices Abstract University of Arkansas CSCE Department Advanced Virtual Worlds Spring 2013 Photorealistic 3D Rendering for VW in Mobile Devices Rafael Aroxa In the past few years, the demand for high performance

More information

About Phoenix FD PLUGIN FOR 3DS MAX AND MAYA. SIMULATING AND RENDERING BOTH LIQUIDS AND FIRE/SMOKE. USED IN MOVIES, GAMES AND COMMERCIALS.

About Phoenix FD PLUGIN FOR 3DS MAX AND MAYA. SIMULATING AND RENDERING BOTH LIQUIDS AND FIRE/SMOKE. USED IN MOVIES, GAMES AND COMMERCIALS. About Phoenix FD PLUGIN FOR 3DS MAX AND MAYA. SIMULATING AND RENDERING BOTH LIQUIDS AND FIRE/SMOKE. USED IN MOVIES, GAMES AND COMMERCIALS. Phoenix FD core SIMULATION & RENDERING. SIMULATION CORE - GRID-BASED

More information

SES123 Computer Methods Lab Procedures

SES123 Computer Methods Lab Procedures SES123 Computer Methods Lab Procedures Introduction Science and engineering commonly involve numerical calculations, graphs, photographic images, and various types of figures. In this lab, you will use

More information

Computer Graphics Introduction. Taku Komura

Computer Graphics Introduction. Taku Komura Computer Graphics Introduction Taku Komura What s this course all about? We will cover Graphics programming and algorithms Graphics data structures Applied geometry, modeling and rendering Not covering

More information

Atmospheric Reentry Geometry Shader

Atmospheric Reentry Geometry Shader Atmospheric Reentry Geometry Shader Robert Lindner Introduction In order to simulate the effect of an object be it an asteroid, UFO or spacecraft entering the atmosphere of a planet, I created a geometry

More information

From Vertices to Fragments: Rasterization. Reading Assignment: Chapter 7. Special memory where pixel colors are stored.

From Vertices to Fragments: Rasterization. Reading Assignment: Chapter 7. Special memory where pixel colors are stored. From Vertices to Fragments: Rasterization Reading Assignment: Chapter 7 Frame Buffer Special memory where pixel colors are stored. System Bus CPU Main Memory Graphics Card -- Graphics Processing Unit (GPU)

More information

GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON

GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON Deferred Rendering in Killzone 2 Michal Valient Senior Programmer, Guerrilla Talk Outline Forward & Deferred Rendering Overview G-Buffer Layout Shader Creation Deferred Rendering in Detail Rendering Passes

More information

1 Tutorials About the Tutorial Exercises

1 Tutorials About the Tutorial Exercises 1 Tutorials About the Tutorial Exercises..............................................2 Getting Started........................................................3 Exercise 1: Animating a 3D Model Using Keyframes............................3

More information

QuickStart Manual Basic navigation techniques to get to your data fast. scan.com/tascangui

QuickStart Manual Basic navigation techniques to get to your data fast.  scan.com/tascangui QuickStart Manual Basic navigation techniques to get to your data fast http://www.ta- scan.com/tascangui 1 The Homepage... 3 2 Top Menu... 4 3 Graphic User Interphase (GUI) philosophy... 4 4 Portfolio

More information

Copyright Khronos Group, Page Graphic Remedy. All Rights Reserved

Copyright Khronos Group, Page Graphic Remedy. All Rights Reserved Avi Shapira Graphic Remedy Copyright Khronos Group, 2009 - Page 1 2004 2009 Graphic Remedy. All Rights Reserved Debugging and profiling 3D applications are both hard and time consuming tasks Companies

More information

Graphics Performance Optimisation. John Spitzer Director of European Developer Technology

Graphics Performance Optimisation. John Spitzer Director of European Developer Technology Graphics Performance Optimisation John Spitzer Director of European Developer Technology Overview Understand the stages of the graphics pipeline Cherchez la bottleneck Once found, either eliminate or balance

More information

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker CMSC427 Advanced shading getting global illumination by local methods Credit: slides Prof. Zwicker Topics Shadows Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection

More information

The Rendering Pipeline (1)

The Rendering Pipeline (1) The Rendering Pipeline (1) Alessandro Martinelli alessandro.martinelli@unipv.it 30 settembre 2014 The Rendering Pipeline (1) Rendering Architecture First Rendering Pipeline Second Pipeline: Illumination

More information

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11 Pipeline Operations CS 4620 Lecture 11 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives to pixels RASTERIZATION

More information

TSBK03 Screen-Space Ambient Occlusion

TSBK03 Screen-Space Ambient Occlusion TSBK03 Screen-Space Ambient Occlusion Joakim Gebart, Jimmy Liikala December 15, 2013 Contents 1 Abstract 1 2 History 2 2.1 Crysis method..................................... 2 3 Chosen method 2 3.1 Algorithm

More information

ANSYS Workbench Guide

ANSYS Workbench Guide ANSYS Workbench Guide Introduction This document serves as a step-by-step guide for conducting a Finite Element Analysis (FEA) using ANSYS Workbench. It will cover the use of the simulation package through

More information

NVIDIA Parallel Nsight. Jeff Kiel

NVIDIA Parallel Nsight. Jeff Kiel NVIDIA Parallel Nsight Jeff Kiel Agenda: NVIDIA Parallel Nsight Programmable GPU Development Presenting Parallel Nsight Demo Questions/Feedback Programmable GPU Development More programmability = more

More information

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into 2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel

More information

Pipeline Operations. CS 4620 Lecture 10

Pipeline Operations. CS 4620 Lecture 10 Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination

More information

Tutorial. De Novo Assembly of Paired Data. Sample to Insight. November 21, 2017

Tutorial. De Novo Assembly of Paired Data. Sample to Insight. November 21, 2017 De Novo Assembly of Paired Data November 21, 2017 Sample to Insight QIAGEN Aarhus Silkeborgvej 2 Prismet 8000 Aarhus C Denmark Telephone: +45 70 22 32 44 www.qiagenbioinformatics.com AdvancedGenomicsSupport@qiagen.com

More information

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside CS230 : Computer Graphics Lecture 4 Tamar Shinar Computer Science & Engineering UC Riverside Shadows Shadows for each pixel do compute viewing ray if ( ray hits an object with t in [0, inf] ) then compute

More information

EDSL Guide for Revit gbxml Files

EDSL Guide for Revit gbxml Files EDSL Guide for Revit gbxml Files Introduction This guide explains how to create a Revit model in such a way that it will create a good gbxml file. Many geometry issues with gbxml files can be fixed within

More information

Ink2Go Help. Toolbar functions

Ink2Go Help. Toolbar functions Toolbar functions S/N Icons Description 1 New Page Create a new page for annotations. Existing annotations will be saved as previous page. You can then use Previous Page/Next Page buttons to navigate between

More information

CS770/870 Spring 2017 Color and Shading

CS770/870 Spring 2017 Color and Shading Preview CS770/870 Spring 2017 Color and Shading Related material Cunningham: Ch 5 Hill and Kelley: Ch. 8 Angel 5e: 6.1-6.8 Angel 6e: 5.1-5.5 Making the scene more realistic Color models representing the

More information

Depth. Common Classification Tasks. Example: AlexNet. Another Example: Inception. Another Example: Inception. Depth

Depth. Common Classification Tasks. Example: AlexNet. Another Example: Inception. Another Example: Inception. Depth Common Classification Tasks Recognition of individual objects/faces Analyze object-specific features (e.g., key points) Train with images from different viewing angles Recognition of object classes Analyze

More information

Gamepad Controls. Figure 1: A diagram of an Xbox controller. Figure 2: A screenshot of the BodyViz Controller Panel. BodyViz 3 User Manual 1

Gamepad Controls. Figure 1: A diagram of an Xbox controller. Figure 2: A screenshot of the BodyViz Controller Panel. BodyViz 3 User Manual 1 BodyViz User Manual Gamepad Controls The first step in becoming an expert BodyViz user is to get acquainted with the Xbox gamepad, also known as a controller, and the BodyViz Controller Panel. These can

More information

Eurostat Regions and Cities Illustrated: Usage guide

Eurostat Regions and Cities Illustrated: Usage guide Eurostat Regions and Cities Illustrated: Usage guide With Regions and Cities Illustrated, you can easily visualise regional indicators and view data for regions you are most interested in. This interactive

More information

This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you

This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you will see our underlying solution is based on two-dimensional

More information

Tangents. In this tutorial we are going to take a look at how tangents can affect an animation.

Tangents. In this tutorial we are going to take a look at how tangents can affect an animation. Tangents In this tutorial we are going to take a look at how tangents can affect an animation. One of the 12 Principles of Animation is called Slow In and Slow Out. This refers to the spacing of the in

More information

There are two lights in the scene: one infinite (directional) light, and one spotlight casting from the lighthouse.

There are two lights in the scene: one infinite (directional) light, and one spotlight casting from the lighthouse. Sample Tweaker Ocean Fog Overview This paper will discuss how we successfully optimized an existing graphics demo, named Ocean Fog, for our latest processors with Intel Integrated Graphics. We achieved

More information

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

Optimizing and Profiling Unity Games for Mobile Platforms. Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June Optimizing and Profiling Unity Games for Mobile Platforms Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June 1 Agenda Introduction ARM and the presenter Preliminary knowledge

More information

ARM. Streamline. Performance Analyzer. Using ARM Streamline. Copyright 2010 ARM Limited. All rights reserved. ARM DUI 0482A (ID100210)

ARM. Streamline. Performance Analyzer. Using ARM Streamline. Copyright 2010 ARM Limited. All rights reserved. ARM DUI 0482A (ID100210) ARM Streamline Performance Analyzer Using ARM Streamline Copyright 2010 ARM Limited. All rights reserved. ARM DUI 0482A () ARM Streamline Performance Analyzer Using ARM Streamline Copyright 2010 ARM Limited.

More information

V12 Highlights. What s new in Richmond ServiceDesk V12?

V12 Highlights. What s new in Richmond ServiceDesk V12? V12 Highlights What s new in? Richmond ServiceDesk v12 incorporates many new features including a new Report Generator, a new CSP Homepage Designer, a new CSP Menu Designer, a new CSP Panels and new CSP

More information

Advanced Debugging with the System Profiler. Rennie Allen Cisco Field Application Engineer

Advanced Debugging with the System Profiler. Rennie Allen Cisco Field Application Engineer Advanced Debugging with the System Profiler Rennie Allen Cisco Field Application Engineer What is the System Profiler? The System Profiler is a logic analyser for your software system The kernel records

More information

Rasterization Overview

Rasterization Overview Rendering Overview The process of generating an image given a virtual camera objects light sources Various techniques rasterization (topic of this course) raytracing (topic of the course Advanced Computer

More information

Integrated Pest Management

Integrated Pest Management IMu Documentation Integrated Pest Management Document Version 1 EMu version 4.3 Page 1 Contents S E C T I O N 1 Integrated Pest Management (IPM) 1 How to run an IPM report 2 The IPM Report: a graphical,

More information

ADD A 3-D PIE CHART TO THE WORKBOOK

ADD A 3-D PIE CHART TO THE WORKBOOK ADD A 3-D PIE CHART TO THE WORKBOOK A pie chart is an easy way to show the relationship of items to the whole. In this exercise, you will be creating a Pie Chart that will show the relationship between

More information

Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.

Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters. 1 2 Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters. Crowd rendering in large environments presents a number of challenges,

More information

Up and Running Software The Development Process

Up and Running Software The Development Process Up and Running Software The Development Process Success Determination, Adaptative Processes, and a Baseline Approach About This Document: Thank you for requesting more information about Up and Running

More information

Optimizing Your Android Applications

Optimizing Your Android Applications Optimizing Your Android Applications Alexander Nelson November 27th, 2017 University of Arkansas - Department of Computer Science and Computer Engineering The Problem Reminder Immediacy and responsiveness

More information

A DOZEN REASONS TO ABSOLUTELY NEVER USE ONENOTE

A DOZEN REASONS TO ABSOLUTELY NEVER USE ONENOTE A DOZEN REASONS TO ABSOLUTELY NEVER USE ONENOTE Or a dozen reasons why you absolutely should (This is a classic contrarian lecture where I argue with myself and try to convince myself.) This is a high

More information

SteelCentral Packet Analyser Walkthrough

SteelCentral Packet Analyser Walkthrough SteelCentral Packet Analyser Walkthrough The aim of this demo is to show how to perform simple analysis of packets using the SteelCentral Packet Analyser in conjunction with NetShark. We will talk through

More information