本文主要是介绍分析工具 nvprof简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
nvprof 是一个可用于Linux、Windows和OS X的命令行探查器。
使用 nvprof ./myApp 运行我的应用程序,我可以快速看到它所使用的所有内核和内存副本的摘要,摘要将对同一内核的所有调用组合在一起,显示每个内核的总时间和总应用程序时间的百分比。
除了摘要模式之外, nvprof 还支持 GPU – 跟踪和API跟踪模式 ,它可以让您看到所有内核启动和内存副本的完整列表,在API跟踪模式下,还可以看到所有CUDA API调用的完整列表。
下面是一个使用 nvprof --print-gpu-trace 评测在我的电脑上的两个 GPUs 上运行的 nbody 示例应用程序的示例。我们可以看到每个内核在哪个 GPU 上运行,以及每次启动使用的网格维度。当您想验证 multi- GPU 应用程序是否按预期运行时,这非常有用。
nvprof --print-gpu-trace ./nbody --benchmark -numdevices=2 -i=1...==4125== Profiling application: ./nbody --benchmark -numdevices=2 -i=1==4125== Profiling result:Start Duration Grid Size Block Size Regs* SSMem* DSMem* Size Throughput Device Context Stream Name260.78ms 864ns - - - - - 4B 4.6296MB/s Tesla K20c (0) 2 2 [CUDA memcpy HtoD]260.79ms 960ns - - - - - 4B 4.1667MB/s GeForce GTX 680 1 2 [CUDA memcpy HtoD
这篇关于分析工具 nvprof简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!