NVIDIA Parallel Nsight NVIDIA Parallel Nsight NVIDIA DevTech | Anton Obukhov
NVIDIA Corporation, 2010 Что такое Parallel Nsight? NVIDIA Parallel Nsight (aka Nexus) – Среда разработки приложений для гетерогенных платформ Parallel Nsight интегрируется в Microsoft Visual Studio с целью обеспечить гетерогенность разработки
NVIDIA Corporation, 2010 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
NVIDIA Corporation, 2010 … чего хотят разработчики Visual Studio Profile GPU Performance Tools Debug GPU Source and Graphics Debugger Build CPU GPU CUDA Project System Platform Analysis CPU GPU Platform Analysis CPU GPU Edit CPU GPU GPU Code Browsing Intellisense GPU Code Browsing Intellisense GPU CPU GPU CPU
NVIDIA Corporation, 2010 NVIDIA Parallel Nsight Отладка кода на самом GPU Анализ активности Интеграция с Visual Studio 2008 Возможность разработки для CPU и GPU в едином цикле разработки приложения
NVIDIA Corporation, 2010 C/C++ DirectX10/DirectX11 and OpenGLCUDA, 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 HLSLC-CUDA, OpenCL C-99, and HLSL
NVIDIA Corporation, 2010 Native GPU Debugging Отладка на GPU, без эмуляции Точное соответствие результатов FPU GPU останавливается на breakpoint Исследование различных пространств памяти Высокая эффективность/скорость отладки
NVIDIA Corporation, 2010 Parallel Nsight CUDA Debugger Сериализация запусков kernelов Контроль на уровне Warpов и пошаговое исполнение Visual Studio debugger фокусирование на треде Поддержка встренных окон Visual Studio – Variables, Watch, Memory, Registers, Modules, Processes, and Threads
NVIDIA Corporation, 2010 Parallel Nsight CUDA Debugger Улучшения Parallel Nsight Debugger – Несколько точек останова по данным и на инструкциях – Вычисление выражений «на лету» – CUDA focus picker – Вычисление выражений поддерживает иерархию памяти CUDA memory (bounds) checker
NVIDIA Corporation, 2010 Heterogeneous Computing Example CPUGPU GPU Memory Patch of 3D vertices GPU Memory Patch of 3D vertices Initialization Sine function High_frequency_sinusoid DeviceToHost memcpy glDrawArray(…) Time
NVIDIA Corporation, 2010 Parallel Nsight C-CUDA Debugger Demo
NVIDIA Corporation, 2010 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
NVIDIA Corporation, 2010 Parallel Nsight Platform Analysis Demo
NVIDIA Corporation, 2010 Профилирование CUDA Базовая информация – Memory coalescing – Branch divergence – Instructions executed – Warp serialization Используются счетчики инструкций и часы на GPU
NVIDIA Corporation, 2010 Parallel Nsight CUDA Profiler
NVIDIA Corporation, 2010 Parallel Nsight Build C++ project system – Parallel Nsight options – CUDA vsprop files CUDA project system – NVCC build integration – Error reporting – Debugger session
NVIDIA Corporation, 2010 Поддерживаемые OS 32 bit 64 bit 32 on 64 Windows Vista SP1Windows 7
NVIDIA Corporation, 2010 Системные требования Удаленная отладка DesktopMobile
NVIDIA Corporation, 2010 Системные требования Full GPU acceleration SLI Multi-OSMulti-GPU Локальная отладка
NVIDIA Corporation, 2010 Системные требования Any NVIDIA Optimus laptop Локальная отладка
NVIDIA Corporation, 2010 Живое Демо & Q/A Настройка Parallel Nsight Project в Visual Studio Отладка с Parallel Nsight Анализ и профилирование с Parallel Nsight Parallel Nsight Memory Checker Становитесь зарегистрированным разработчиком уже сегодня: