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的入门,具体还要自己去发掘,不说了该优化我的程序去了。

目录
相关文章
|
10月前
|
C++ Windows
Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013、VS2015、VS2017、VS2019、VS2022版本)
Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013、VS2015、VS2017、VS2019、VS2022版本)
264 0
|
机器学习/深度学习 并行计算 IDE
基于Windows中学习Deep Learning之搭建Anaconda+Cudnn+Cuda+Pytorch+Pycharm工具和配置环境完整最简版(一)
基于Windows中学习Deep Learning之搭建Anaconda+Cudnn+Cuda+Pytorch+Pycharm工具和配置环境完整最简版
256 0
基于Windows中学习Deep Learning之搭建Anaconda+Cudnn+Cuda+Pytorch+Pycharm工具和配置环境完整最简版(一)
|
PyTorch 编译器 算法框架/工具
基于Windows中学习Deep Learning之搭建Anaconda+Cudnn+Cuda+Pytorch+Pycharm工具和配置环境完整最简版(二)
基于Windows中学习Deep Learning之搭建Anaconda+Cudnn+Cuda+Pytorch+Pycharm工具和配置环境完整最简版
118 0
基于Windows中学习Deep Learning之搭建Anaconda+Cudnn+Cuda+Pytorch+Pycharm工具和配置环境完整最简版(二)
|
人工智能 TensorFlow 算法框架/工具
Visual Studio 2017 配置OpenVINO开发环境
Visual Studio 2017 配置OpenVINO开发环境
Visual Studio 2017 配置OpenVINO开发环境
|
并行计算 API
|
并行计算 C语言 编译器
|
并行计算 API C语言
|
并行计算 安全 程序员
|
并行计算 索引 API
|
并行计算 iOS开发 MacOS