Summary
NVIDIA Nsight Systems 2019.5 is a powerful tool designed for system-wide application algorithm tuning, offering multi-process tree support, and helping developers locate optimization opportunities. This version brings significant improvements and new features to enhance the development workflow.
Understanding Nsight Systems
Nsight Systems is part of NVIDIA’s comprehensive suite of developer tools, aimed at providing deep insights into the performance of applications running on NVIDIA GPUs. It is designed to work seamlessly with other NVIDIA tools like Nsight Compute and Nsight Graphics, offering a holistic view of application performance.
Key Features
- System-wide application algorithm tuning: Nsight Systems allows developers to analyze and optimize the performance of their applications across the entire system, including CPUs and GPUs.
- Multi-process tree support: This feature enables the analysis of complex applications with multiple processes, making it easier to identify bottlenecks and optimization opportunities.
- Locate optimization opportunities: With detailed timelines and metrics, developers can pinpoint areas where improvements can be made, such as gaps in CPU and GPU utilization.
- Visualize millions of events: The tool provides a fast GUI timeline that can handle millions of events, making it easier to understand the flow of application execution.
- Balance workload: Nsight Systems helps in balancing the workload across multiple CPUs and GPUs, ensuring optimal resource utilization.
New Features in Nsight Systems 2019.5
The latest version of Nsight Systems introduces several new features and improvements:
Enhanced GUI
- Improved timeline: The timeline view has been enhanced to provide better visualization of events and easier navigation.
- Zoom in to valleys: Developers can now zoom in on specific areas of the timeline to identify gaps in CPU and GPU utilization.
NVTX Integration
- Code annotation: Nsight Systems integrates with NVIDIA Tools Extension (NVTX) to provide detailed annotations of application code, helping in identifying performance bottlenecks.
- GPU metrics sampling: The tool offers useful GPU utilization metrics, though it does not provide kernel names or correlation.
Interpreting GPU Sampling Metrics
- GR Activity: Indicates when the GPU is performing work, such as graphics or compute tasks.
- SM Activity: Shows the utilization of the GPU’s Streaming Multiprocessors (SMs), helping in identifying if the GPU is underutilized.
- SM Instruction Issued: Provides insights into the number of instructions issued by the GPU, which can indicate stalls due to memory access.
- SM Instructions Tensor Activity: Offers information on tensor core utilization, which can be affected by shared memory and data loading.
Using Nsight Systems for Performance Analysis
To get the most out of Nsight Systems, developers should follow these steps:
- Launch Nsight Systems: Start the tool and select the application to be analyzed.
- Configure the analysis: Choose the metrics and events to be captured during the analysis.
- Run the analysis: Execute the application under Nsight Systems to capture performance data.
- Analyze the results: Use the timeline and metrics views to identify bottlenecks and optimization opportunities.
Table: Key Features of Nsight Systems 2019.5
Feature | Description |
---|---|
System-wide application algorithm tuning | Analyze and optimize application performance across the entire system. |
Multi-process tree support | Analyze complex applications with multiple processes. |
Locate optimization opportunities | Identify bottlenecks and areas for improvement. |
Visualize millions of events | Fast GUI timeline for detailed event analysis. |
Balance workload | Optimize resource utilization across multiple CPUs and GPUs. |
Table: New Features in Nsight Systems 2019.5
Feature | Description |
---|---|
Enhanced GUI | Improved timeline view and navigation. |
Zoom in to valleys | Detailed analysis of CPU and GPU utilization gaps. |
NVTX Integration | Code annotation and GPU metrics sampling. |
Interpreting GPU Sampling Metrics | Detailed insights into GPU performance. |
Conclusion
NVIDIA Nsight Systems 2019.5 is a powerful tool for developers looking to optimize the performance of their applications running on NVIDIA GPUs. With its comprehensive set of features and improvements, it provides a detailed view of application performance, helping developers identify and address bottlenecks. By integrating with other NVIDIA tools, Nsight Systems offers a holistic approach to performance analysis and optimization.