You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Nsight Compute分析CUDA __global__内核中的__device__函数?

用Nsight Compute分析CUDA内核内部__device__函数的方法
  • 开启函数级剖析开关
    在Nsight Compute的分析配置面板中,找到并勾选「Enable Function-level Profiling」选项(不同版本界面可能略有差异,通常在Profiling Options分类下)。开启后工具会追踪内核调用的所有__device__函数,单独统计它们的性能数据。

  • 编译时保留符号与行号信息
    编译CUDA代码时必须添加对应参数,让Nsight能关联内核与内部函数的符号:

    • 若要分析带调试信息的代码,使用:nvcc -G -lineinfo your_code.cu -o your_bin
    • 若要分析优化后的代码,仅保留行号信息即可:nvcc -lineinfo your_code.cu -o your_bin
      注:-G会禁用编译器优化,适合调试阶段剖析;仅用-lineinfo时优化不受影响,但函数级数据的精准度可能稍有下降。
  • 查看函数级性能报告
    完成剖析后,在Nsight Compute的报告界面切换到「Functions」标签,就能看到内核调用的每个__device__函数的详细指标,包括指令吞吐量、内存访问效率、Warp调度情况等。

  • 定位函数内的性能瓶颈
    选中目标__device__函数后,切换到「Source」面板可关联源代码行与性能数据,「Metrics」面板则能查看该函数的各项细分性能指标,快速定位耗时的代码段。

内容的提问来源于stack exchange,提问作者BoringSession

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 11:20:36