31
NVIDIA Developer Tools for Graphics and PhysX NVIDIA Developer Tools for Graphics and PhysX

NVIDIA Developer Tools for Graphics and PhysX · NVIDIA Developer Tools for Graphics and PhysX. PerfKit GPU Programming Guide ShaderPerf PerfHUD Conference Presentations PerfSDK GLExpert

  • Upload
    others

  • View
    18

  • Download
    0

Embed Size (px)

Citation preview

NVIDIA Developer Toolsfor

Graphics and PhysX

NVIDIA Developer Toolsfor

Graphics and PhysX

PerfKit

GPU Programming Guide

ShaderPerf

PerfHUD

Conference Presentations

PerfSDK

GLExpert

gDEBugger

NV PIX Plug‐in

Direct3D SDK

PhysX SDK

Cg Toolkit

Videos

Books

FX Composer

Texture Tools

mental mill Artist Edition

Melody

NVIDIAShader Library

OpenGL SDK

CUDA SDK

Shader Debugger

NVSG

Photoshop Plug‐ins

Whitepapers

GPU Gems 3

The Cg TutorialPhysX ToolsPhysX VRDPhysX Plug‐Ins

GPU Gems 2

GPU Gems

Agenda

• PerfHUD 6.5

• FX Composer 2.0, Shader Debugger and ShaderPerf

• AgPerfMon

• VRD

NVIDIA PerfHUD 6.5

What’s new in PerfHUD 6.5?

• Unified Driver on Vista: use any release driver!• Comprehensive SLI Support

• Graphs for SLI specific data• Insight into SLI performance gotchas

• Powerful new debugging features• Texture visualization and override• API Call data mining and analysis• Dependency view

• Usability Features• Save/Load DX10 frame captures• Rich use of Direct3D PerfMarkers (PIX)

PerfHUD: Performance Dashboard

Graph GPU and driver data

Edit to suit your needs

SLI Graph for multi-GPU

API usage statistics

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of CrytekGmbH in the U.S and/or other countries.

PerfHUD: Frame Debugger

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of Crytek GmbH in the U.S and/or other countries.

Scrub through scene

Visualize draw call info

Textures and RTs

Tooltips on buffers

PerfHUD: Frame Debugger

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of Crytek GmbH in the U.S and/or other countries.

Texture analysis: substituteprecomputed textures

Controllable via Perf Markers

PerfHUD: Frame Debugger

Visualize any buffer full screen

2D/3D/Cube/ArraysPan/Zoom

Change mipmap level

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of Crytek GmbH in the U.S and/or other countries.

PerfHUD: Frame DebuggerBased on a frame capture

See frame events including parameters

Tooltips for details

Connected to scrubber

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of Crytek GmbH in the U.S and/or other countries.

PerfHUD: Frame Debugger

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of CrytekGmbH in the U.S and/or other countries.

Show producers & consumers dependencies for each call

These can hurt single GPU and SLI performance

PerfHUD: Advanced Frame Debugger

Geometry Preview

Vertex and index buffer setup

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of Crytek GmbH in the U.S and/or other countries.

PerfHUD: Advanced Frame Debugger

Edit & Continue Shaders

Visualize input textures

Constants

Sampler overrides

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of CrytekGmbH in the U.S and/or other countries.

PerfHUD: Advanced Frame Debugger

Display and modify all render state settings

Render targets displayed

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of CrytekGmbH in the U.S and/or other countries.

PerfHUD: Frame Profiler

All draw calls profiled

Draw calls grouped by StateBuckets: multiply performance optimizations

Multiple result graphs

Crysis used with permission from Crytek. © Crytek GmbH. All Rights Reserved. Crysis and CryENGINE are trademarks or registered trademarks of Crytek GmbH in the U.S and/or other countries.

More on PerfHUD 6.5

• Better control via PerfMarkers: add them now!• API time graph• More performance hints: VSync on, windowed mode, event queries,

not all render targets used, VBs not managed, etc.• Subtotals in Frame Profiler• Break (_int 3) on draw call• 32bit apps on 64bit Oss• Save/Load DX10 frame captures (Ctrl+S in the Frame Debugger)

PerfKit: Features

• PerfSDK• Real time performance information in your game• Driver data, GPU counters, etc.• Simplified Experiments for easy bottleneck analysis• Simple API, code samples and helper classes

• GLExpert• Detailed feedback on pipeline setup• SLI performance feedback• Warnings for software fallback• VBO/FBO performance information

• Microsoft PIX for Windows plugin• GPU & driver counters alongside PIX data

FX Composer 2.5, Shader Debugger and ShaderPerf

FX ComposerShader Authoring Made Easy!

• DirectX 10 backend• Shader Debugger• GeForce 8 Series Shader

Performance• Full-featured code editor• Shader creation wizard with

templates• Integration with online

Shader Library• Materials panel to organize

materials

Shader Debugger

• Broad Language Support• HLSL10/9• CgFX• COLLADA FX Cg 

• Step through shader source code

• Visualize variables across your geometry

• Plug‐in for FX Composer 2.5

0.74

1.32

1.78

17.54

0.00 5.00 10.00 15.00 20.00

GPU-Accelerated Texture Tools10x faster, high-quality texture compression

• GPU-accelerated via CUDA• Support for DirectX 10 texture

formats• Includes complete source

code• Amazing performance without

sacrificing qualityTextures Compressed Per Second

NVIDIA Texture Tools 2(Intel Core 2 Duo – 1 Core)

S3_quant(Athlon64 4400 – 1 Core)

NVIDIA Texture Tools 2(GeForce 8800 GTX)

NVIDIA Texture Tools 2(Intel Core 2 Duo – 1 Core)

Resource

• Online: downloads, videos, etc.

http://developer.nvidia.com/PerfKithttp://developer.nvidia.com/PerfHUDhttp://developer.nvidia.com/ShaderPerfhttp://developer.nvidia.com/FXComposer

Feedback and Support: http://developer.nvidia.com/forums

VRD for PhysX

VRD

• VRD: Visual Remoter Debugger• A very useful tool for problem-solving

• Functionalities• Visualize PhysX objects to give you a pure physics world• Show detailed information of PhysX objects• Record detailed simulation status and can playback• Interact with game at real time when recording

Profiler shows Profiling data each frame

Event List shows events each frame

Here visualizes you the PhysX world

Scene Browser tells you detailed info of PhysX objects

AgPerfMon for PhysX

AgPerfMon

• AgPerfMon• a comprehensive profiling tool for physics applications

• Functionalities• Powerful event-logging allows you to understand exactly how your application

is using PhysX • Event Viewer displays a Gantt chart of all events • Handy utility allows you to export your data to a graph, or to a comma-delimited

format (CSV)

PhysX profiling zones

Chart shows clearly the time a profiling zone consumes

Selected frame # and the time it consumes

DCC Tools

Available PhysX Tools

• Plugins for 3D Model tools• 3DS Max Plugin• Maya Plugin

• PhysXViewer• Softbody edit• Ragdoll transfer

DCC Tools

1. Create Art Model

2. Model to PhysX Actors

PhysX Properties

Shapes, Mass, Speed, MaterialUse PhysX Tools

3. Export to NxuStream

4. Load it in games

PhysX Pipeline

Questions?