NVIDIA Parallel Nsight. Jeff Kiel

Similar documents
Enabling the Next Generation of Computational Graphics with NVIDIA Nsight Visual Studio Edition. Jeff Kiel Director, Graphics Developer Tools

NVIDIA Authoring Tools for

Raise your VR game with NVIDIA GeForce Tools

NVIDIA Developer Tools for Graphics and PhysX

Siggraph Agenda. Usability & Productivity. FX Composer 2.5. Usability & Productivity 9/12/2008 9:16 AM

NVIDIA Nsight Visual Studio Edition 4.0 A Fast-Forward of All the Greatness of the Latest Edition. Sébastien Dominé, NVIDIA

Seamless Compute and OpenGL Graphics Development in NVIDIA Nsight 3.0 Visual Studio Edition and Beyond 3/20/2013

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

Working with Metal Overview

Copyright Khronos Group, Page Graphic Remedy. All Rights Reserved

The Application Stage. The Game Loop, Resource Management and Renderer Design

GPU Computing Master Clss. Development Tools

Shaders. Slide credit to Prof. Zwicker

April 4-7, 2016 Silicon Valley

Qualcomm Snapdragon Profiler

CUDA Development Using NVIDIA Nsight, Eclipse Edition. David Goodwin

PERFWORKS A LIBRARY FOR GPU PERFORMANCE ANALYSIS

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

PERFORMANCE OPTIMIZATIONS FOR AUTOMOTIVE SOFTWARE

Copyright Khronos Group Page 1

CodeXL Quick Start Guide

Jomar Silva Technical Evangelist

April 4-7, 2016 Silicon Valley. CUDA DEBUGGING TOOLS IN CUDA8 Vyas Venkataraman, Kudbudeen Jalaludeen, April 6, 2016

A Trip Down The (2011) Rasterization Pipeline

Practical Performance Analysis Koji Ashida NVIDIA Developer Technology Group

CS427 Multicore Architecture and Parallel Computing

CS179 GPU Programming Introduction to CUDA. Lecture originally by Luke Durant and Tamas Szalay

CS GPU and GPGPU Programming Lecture 8+9: GPU Architecture 7+8. Markus Hadwiger, KAUST

Graphics Processing Unit Architecture (GPU Arch)

CS GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1. Markus Hadwiger, KAUST

The Ultimate Developers Toolkit. Jonathan Zarge Dan Ginsburg

Android PerfHUD ES quick start guide

Introduction to Shaders.

Profiling and Debugging Games on Mobile Platforms

Graphics Performance Analyzer for Android

Ciril Bohak. - INTRODUCTION TO WEBGL

Collecting OpenCL*-related Metrics with Intel Graphics Performance Analyzers

EE , GPU Programming

Animation Essentially a question of flipping between many still images, fast enough

Could you make the XNA functions yourself?

Lecture 13: OpenGL Shading Language (GLSL)

CS 179: GPU Programming

Real-Time Reyes: Programmable Pipelines and Research Challenges. Anjul Patney University of California, Davis

Graphics Hardware. Instructor Stephen J. Guy

GPGPU Applications. for Hydrological and Atmospheric Simulations. and Visualizations on the Web. Ibrahim Demir

Horizon-Based Ambient Occlusion using Compute Shaders. Louis Bavoil

PROFESSIONAL. WebGL Programming DEVELOPING 3D GRAPHICS FOR THE WEB. Andreas Anyuru WILEY. John Wiley & Sons, Ltd.

Rendering Objects. Need to transform all geometry then

Programmable GPUs. Real Time Graphics 11/13/2013. Nalu 2004 (NVIDIA Corporation) GeForce 6. Virtua Fighter 1995 (SEGA Corporation) NV1

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

GORDON SELLEY TONY HOSIER AMD GPU DEVELOPER TOOLS TEAM OPTIMIZING LINUX GAMES FOR AMD GRAPHICS USING GPU PERFSTUDIO2

Real-time Graphics 9. GPGPU

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

OpenGL View Library. Supervised by: Martin Madaras

Mali Developer Resources. Kevin Ho ARM Taiwan FAE

Graphics Hardware, Graphics APIs, and Computation on GPUs. Mark Segal

NVIDIA Fermi Architecture

Tesla GPU Computing A Revolution in High Performance Computing

V-Ray RT: A New Paradigm in Photorealistic Raytraced Rendering on NVIDIA GPUs. Vladimir Koylazov Chaos Software.

Real-time Graphics 9. GPGPU

NSIGHT ECLIPSE EDITION

Spring 2009 Prof. Hyesoon Kim

CS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012

Pump Up Your Pipeline

Introduction to the Direct3D 11 Graphics Pipeline

developer.nvidia.com The Source for GPU Programming

Spring 2011 Prof. Hyesoon Kim

CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015

GPU Memory Model. Adapted from:

2.11 Particle Systems

Per-Face Texture Mapping for Realtime Rendering. Realtime Ptex

EE 4702 GPU Programming

CS8803SC Software and Hardware Cooperative Computing GPGPU. Prof. Hyesoon Kim School of Computer Science Georgia Institute of Technology

NVIDIA Developer Toolkit. March 2005

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

CS451Real-time Rendering Pipeline

PowerVR: Getting Great Graphics Performance with the PowerVR Insider SDK. PowerVR Developer Technology

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

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

Dave Shreiner, ARM March 2009

TOON BOOM HARMONY Paint Preferences Guide

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer

OpenGL on Android. Lecture 7. Android and Low-level Optimizations Summer School. 27 July 2015

The Shadow Rendering Technique Based on Local Cubemaps

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

CS195V Week 1. Introduction

NSIGHT ECLIPSE EDITION

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

Bringing AAA graphics to mobile platforms. Niklas Smedberg Senior Engine Programmer, Epic Games

Accelerating Realism with the (NVIDIA Scene Graph)

New GPU Features of NVIDIA s Maxwell Architecture

Current Trends in Computer Graphics Hardware

CSE4030 Introduction to Computer Graphics

General Purpose Computation (CAD/CAM/CAE) on the GPU (a.k.a. Topics in Manufacturing)

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

Evolution of GPUs Chris Seitz

Threading Hardware in G80

Parallel Programming for Graphics

Fragment-Parallel Composite and Filter. Anjul Patney, Stanley Tzeng, and John D. Owens University of California, Davis

Programming shaders & GPUs Christian Miller CS Fall 2011

Transcription:

NVIDIA Parallel Nsight Jeff Kiel

Agenda: NVIDIA Parallel Nsight Programmable GPU Development Presenting Parallel Nsight Demo Questions/Feedback

Programmable GPU Development More programmability = more power, more control and cooler effects! BUT more power = longer programs how do I debug this code? How do I harness this amazing hardware in an environment I am familiar with? Image property of Unigine Corp., used by permission

Programmable GPU Development My scene should look like this Image property of Emergent Game Technologies Inc., used by permission

Programmable GPU Development but instead looks like this! How do I debug my skinning shader? Image property of Emergent Game Technologies Inc., used by permission

Programmable GPU Development How do I figure out what model led to which draw call that produced some fragment that was or wasn t blended properly to produce this broken pixel!?!? understand why my performance tanks in this room or when a certain character enters the scene? and on and on and on. Image property of Emergent Game Technologies Inc., used by permission

Programmable GPU Development 2-4 cores 6-12 concurrent threads 256-512 or more cores 1000s 10000s concurrent threads Fundamental problem: Scaling from CPU to GPU is immense and we need tools to make this possible!

Presenting Parallel Nsight GTX480 + Parallel Nsight + Visual Studio One Killer DirectX Development Environment Integrated into Visual Studio Powerful and familiar user interface Hardware-based shader debugger All shader types, including tesselation and compute No game modifications required Full DirectX10/11 frame debugging & profiling Including Pixel History, with debugger integration Combined CPU/GPU performance tools CPU and GPU activities on the same correlated timeline

Parallel Nsight Environment Host Target TCP/IP Visual Studio Target Application CUDA DirectX Nsight Nsight Monitor Run remotely for Shader Debugging (GPU halts at breakpoint) Run locally or remotely for Frame Debugger and Profiling/Tracing

Demo: Launching 1. Launch Nsight Monitor 2. Configure Nsight Project Settings 3. Launch Your Application in Visual Studio

Demo: HUD with Application Running Configurable Performance Graphs HUD Toolbar

Demo: HUD in Frame Debugger Render Target Details Direct3D Perf Markers Scrub Bar

Demo: HUD Render Target Zoom Ctrl Key for Pixel Zoom Zoom Active Render Target in Place

Demo: Frame Debugger Capture Nsight performs a real time capture on your running application Frame information synced between target application and Visual Studio on the host Captures can be saved for later analysis Return to application at any time

Demo: Host Frames Page Draw Calls Scrub Bar Synced Render Target Dependencies Direct3D Perf Markers

Demo: Draw Call Page Shader Resources Geometry Preview Render Targets Links to Pipeline Inspectors

Demo: Texture Viewer Texture Inspector Resource and View Information Mipmap Thumbnails Zoom in on Mipmaps

Demo: Depth Buffer Viewer Web-Like Navigation Bar Host Side Scrubber Visualize Depth Buffer Control Float Remapping via Histogram

Demo: Output Merger State Inspector Inspect All Direct3D State View Any Stage in the Direct3D Pipeline

Demo: Pixel History 1. Choose Pixel of Interest 2. See All Fragments 3. Goto Draw Call Info or Debug Actual Fragment

Demo: Shader Debugger Breakpoint Stopped At Breakpoint In Specified Fragment Stepping, Run To Cursor Full Speed, GPU Evaluated Conditionals, Including Local Variables Visual Studio s Watch Window Populated

Demo: Shader Debugger Focus Pixels in Flight Select Focus Pixel Change Focus, Locals Update

Demo: Frame Profiler State Buckets: Draw Calls Sharing Common State Draw Call Statistics & Link To Draw Call Page Multiple Graphs Bottleneck Information Per Draw Call State Buckets Using Direct3D Perf Markers

Demo: Launching a Trace Configure Application Setup Select What to Trace Launch Your Application

Demo: Trace System Wide Performance Data Filter for Areas of Interest

Demo: Trace CUDA API, Memory Transfers, and Kernel Launch Information DirectX API Calls CPU Core Utilization

The Nsight 1.0 Release A full Visual Studio-integrated development environment Supports DirectX11 + DirectCompute, DirectX10, OpenGL, CUDA C, OpenCL Requires Windows Vista or Windows 7, Visual Studio 2008 SP1

Questions? http://developer.nvidia.com/nsight