如何使用Matlab的Nvidia Visual Profile对CUDA进行分析

Bea*_*amy 3 profiler matlab cuda

我需要从Matlab中分析我的CUDA代码.我一直在将一些matlab代码转换为CUDA以提高性能.我通过调用调用CUDA的mexFunction来完成此操作.matlab feval函数不能提供足够的控制.我可以通过VS运行mexFunction来调试它,但我也需要调试内核,因为我相信这是问题所在.

所以,我的问题是在执行调用它的matlab函数时如何通过分析器运行CUDA代码?

将所有输入的值硬编码到CUDA函数中是不切实际的.

我在Windows 7 64bit上使用Tesla C2050 GPU卡运行Matlab 2012a 64bit

Jos*_*sep 5

如果你需要的是分析您的表现,而不是调试功能nSight也给你,你可以使用下面的技巧我使用的视觉分析器运行MATLAB程序,而无需进行一个exe与测试主要功能:

使用创建批处理文件

matlab -nojvm -nodesktop -wait -sd "yourBaseFolder" -r "theMFunctionYouWantToRun;exit;"
Run Code Online (Sandbox Code Playgroud)

然后在nVidia Visual Profiler上运行脚本.

我正在使用feval CUDA API,因此这有额外的优势,可以向您展示Matlab实际上在做什么.我想它也应该在使用MEX时工作,但从未尝试过.如果它也适用于MEX文件,请告诉我.