CUDA入门(四)Visual Profiler

简介: Visual Profiler 在CUDA程序开发的过程中是一个极有利的工具。可以帮助你找到程序中性能不足之处。 下面是《CUDA_Profiler_Users_Guide》对Visual Profiler描述 Visual Profiler 是是一个图形化的剖析工具,可以显示你的应用程序中CPU和GPU的活动情况,利用分析引擎帮助你寻找优化的机会。 其实除了可视化

Visual Profiler 在CUDA程序开发的过程中是一个极有利的工具。可以帮助你找到程序中性能不足之处。
下面是《CUDA_Profiler_Users_Guide》对Visual Profiler描述
Visual Profiler 是是一个图形化的剖析工具,可以显示你的应用程序中CPU和GPU的活动情况,利用分析引擎帮助你寻找优化的机会。
其实除了可视化的界面,NVIDIA提供了命令行方式的剖析命令:nvprof。对于初学者,使用图形化的方式比较容易上手,所以本节使用Visual Profiler。
Visual Profiler在cuda安装时就自动帮你安装,你可以在菜单-》NVIDIA Corporation-》CUDA ToolKit下找到。这里写图片描述

首先, 将相应的代码通过VS编译生成.exe文件,
如果在生成exe文件是提醒:R6010 -abort() has been called,看一下程序中是否有malloc或者cudamalloc的空间没有Free.

打开Visual Profiler->File->new session 在File中选择刚才编译出来的exe文件
这里写图片描述
直接next再finsh,Visual Profiler将开始运行程序,并开始分析。
当出现

等程序运行完会看到如图:这里写图片描述
其中1为程序中的一些函数等,如cudaMemcpy,stream;2中显示程序中各部分在程序执行过程中占的比例的可视化结果。
Visual Profiler下面的框中 Analysis是对程序改进的一些意见
如点击Examine GPU Usage
会出现这里写图片描述
点击more可以看到对代码的优化建议。
这里写图片描述
details中显示的是程序运行的详细数据,包括函数开始时间,持续时间,线程,块以及带宽等数据;
Console中显示是控制台显示的信息,包括一些程序中的printf 和运行时的警告;
如在运行时会遇到典型的:
==7196== Warning: Some profiling data are not recorded. Make sure cudaProfilerStop() or cuProfilerStop() is called before application exit to flush profile data.
解决方法在程序末尾加cudaDeviceReset()或者cudaProfilerStop()
Warning: Unified Memory Profiling is not supported on devices of compute capability less than 3.0
显卡计算能力没有达到3.0,
解决方法换电脑
settings是刚刚设置Newsession时的相关配置
旁边的Properties是某一个runtime API,函数等的具体特征。
这只是Visual Profiler的入门,具体还要自己去发掘,不说了该优化我的程序去了。

目录
相关文章
|
C++ Windows
Visual Studio 2019 实现并行编译
使用 Visual Studio 2019 实现并行编译
392 0
Visual Studio 2019 实现并行编译
|
8月前
|
并行计算 C++ Windows
windows10下visual studio 2019安装以及cuda11配置
windows10下visual studio 2019安装以及cuda11配置
743 0
|
Java Android开发 开发者
Android Studio Profiler Memory (内存分析工具)的简单使用及问题分析
Android Studio Profiler Memory (内存分析工具)的简单使用及问题分析
2960 0
Android Studio Profiler Memory (内存分析工具)的简单使用及问题分析
|
存储 传感器 测试技术
Python 和 Jupyter 扩展的最新更新:2023 年 6 月版 Visual Studio Code
Visual Studio Code 是一个流行的代码编辑器,它支持多种编程语言,包括 Python 和 Jupyter Notebook。为了让您更好地使用这些语言,Visual Studio Code 提供了一些扩展,可以增强您的编码体验和效率。本文将介绍 2023 年 6 月版 Visual Studio Code 的 Python 和 Jupyter 扩展的最新改进
212 3
|
C++ Windows
Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013、VS2015、VS2017、VS2019、VS2022版本)
Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013、VS2015、VS2017、VS2019、VS2022版本)
443 0
Visual Studio(VS2017/VS2019) C++ 配置 CPLEX 教程
Visual Studio(VS2017/VS2019) C++ 配置 CPLEX 教程
Visual Studio(VS2017/VS2019) C++ 配置 CPLEX 教程
|
人工智能 TensorFlow 算法框架/工具
Visual Studio 2017 配置OpenVINO开发环境
Visual Studio 2017 配置OpenVINO开发环境
Visual Studio 2017 配置OpenVINO开发环境
|
Python 传感器 并行计算
|
数据可视化 开发者 开发工具