NVIDIA Parallel NsightNVIDIA DevTech | Anton Obukhov


The Presentation inside:

Slide 0

NVIDIA Parallel Nsight NVIDIA DevTech | Anton Obukhov


Slide 1

Что такое Parallel Nsight? NVIDIA Parallel Nsight (aka Nexus) – Среда разработки приложений для гетерогенных платформ Parallel Nsight интегрируется в Microsoft Visual Studio с целью обеспечить гетерогенность разработки


Slide 2

Windows Development Environment Visual Studio Build Debug Profile CPU GPU Tools Compiler Shader Debugger Languages GPU Compute Debugger Compute Profiler Graphics Debugger Graphics Profiler Edit


Slide 3

… чего хотят разработчики Visual Studio Profile GPU Performance Tools Debug GPU Source and Graphics Debugger GPU CPU GPU CPU


Slide 4

NVIDIA Parallel Nsight Отладка кода на самом GPU Анализ активности Интеграция с Visual Studio 2008 Возможность разработки для CPU и GPU в едином цикле разработки приложения


Slide 5

C/C++ DirectX10/DirectX11 and OpenGL CUDA, OpenCL and DirectCompute GPU Parallel Nsight Overview Microsoft Visual Studio 2008 SP1 CPU Debug DirectX Frame Parallel Nsight Build Profile HLSL Source CUDA DirectX Frame System Trace: OS, CUDA, DirectX, OpenCL, OpenGL/Cg, and User events DirectX HUD and Experiments CUDA Project System User Application HLSL C-CUDA, OpenCL C-99, and HLSL


Slide 6

Native GPU Debugging Отладка на GPU, без эмуляции Точное соответствие результатов FPU GPU останавливается на breakpoint Исследование различных пространств памяти Высокая эффективность/скорость отладки


Slide 7

Parallel Nsight CUDA Debugger Сериализация запусков kernel’ов Контроль на уровне Warp’ов и пошаговое исполнение Visual Studio debugger фокусирование на треде Поддержка встренных окон Visual Studio Variables, Watch, Memory, Registers, Modules, Processes, and Threads


Slide 8

Parallel Nsight CUDA Debugger Улучшения Parallel Nsight Debugger Несколько точек останова по данным и на инструкциях Вычисление выражений «на лету» CUDA focus picker Вычисление выражений поддерживает иерархию памяти CUDA memory (bounds) checker


Slide 9

Heterogeneous Computing Example CPU GPU GPU Memory Patch of 3D vertices Initialization Sine function High_frequency_sinusoid DeviceToHost memcpy glDrawArray(…) Time


Slide 10

Parallel Nsight C-CUDA Debugger Demo


Slide 11

Platform Analysis Сбор данных об активности OS – process, thread and module events CPU API Trace – CUDA driver API, DirectX, OpenGL, OpenCL, Cg2.2 and User Events GPU Task Trace – C-CUDA and OpenCL launches and memory copies Отчетность о времени, событиях, вызовах, API, загрузке GPU


Slide 12

Parallel Nsight Platform Analysis Demo


Slide 13

Профилирование CUDA Базовая информация Memory coalescing Branch divergence Instructions executed Warp serialization Используются счетчики инструкций и часы на GPU


Slide 14

Parallel Nsight CUDA Profiler


Slide 15

Parallel Nsight Build C++ project system Parallel Nsight options CUDA vsprop files CUDA project system NVCC build integration Error reporting Debugger session


Slide 16

Поддерживаемые OS 32 bit 64 bit 32 on 64 Windows Vista SP1 Windows 7


Slide 17

Системные требования Удаленная отладка Desktop Mobile


Slide 18

Системные требования Full GPU acceleration Full GPU acceleration SLI Multi-OS Multi-GPU Локальная отладка


Slide 19

Системные требования Any NVIDIA Optimus laptop Локальная отладка


Slide 20

Живое Демо & Q/A Настройка Parallel Nsight Project в Visual Studio Отладка с Parallel Nsight Анализ и профилирование с Parallel Nsight Parallel Nsight Memory Checker Становитесь зарегистрированным разработчиком уже сегодня: http://developer.nvidia.com/object/nsight.html


×

HTML:





Ссылка: