Xml 如何从nvprof或NVidia Visual Profiler的输出中获取定时值?

Xml 如何从nvprof或NVidia Visual Profiler的输出中获取定时值?,xml,cuda,profiling,nvvp,text-decoding,Xml,Cuda,Profiling,Nvvp,Text Decoding,我使用nvprof来分析一些东西(包括CPU工作和GPU工作,即我使用nvprof标记等),我得到了nvprof生成的二进制文件。我可以将它们导入NVVP(NVidia Visual Profiler;Linux版本),只需稍加努力,就可以将其保存到XML中 然而。。。XML不包含有关我的各种CPU在运行时做什么的计时数据。它提到了他们的存在,但没有更多。此外,XML的末尾在PDM标记中有一个二进制blob,可能是Base64编码的。我不清楚那里是否有帮助 这是一个很老的问题,但也许有人会发现答

我使用nvprof来分析一些东西(包括CPU工作和GPU工作,即我使用nvprof标记等),我得到了nvprof生成的二进制文件。我可以将它们导入NVVP(NVidia Visual Profiler;Linux版本),只需稍加努力,就可以将其保存到XML中


然而。。。XML不包含有关我的各种CPU在运行时做什么的计时数据。它提到了他们的存在,但没有更多。此外,XML的末尾在PDM标记中有一个二进制blob,可能是Base64编码的。我不清楚那里是否有帮助

这是一个很老的问题,但也许有人会发现答案很有用

nvprof
输出文件实际上是SQLite3数据库,您可以使用独立的SQLite3程序或以编程方式打开它们。时间线信息在这些表中(所有时间戳均以纳秒为单位):

  • CUPTI\u活动\u种类\u并发\u内核
    -有关内核的数据
  • CUPTI\u ACTIVITY\u KIND\u MEMCPY
    -关于内存拷贝的数据(非P2P)
  • CUPTI\u ACTIVITY\u KIND\u MEMCPY2
    -关于P2P内存拷贝的数据
  • CUPTI\u活动\u种类\u成员集
    -关于成员集的数据
  • CUPTI\u ACTIVITY\u KIND\u RUNTIME
    -有关CUDA运行时API调用的数据
  • CUPTI\u活动\u种类\u驱动程序
    -有关CUDA驱动程序API调用的数据
  • CUPTI\u活动\u种类\u标记
    -有关NVTX标记的数据。它的形式与其他表稍有不同,因为它没有
    start
    end
    字段。相反,标记的开始和结束是两个条目(结束有
    name=0

您可以使用
correlationId
字段将API调用与内核/memcopies/memset关联起来。

这是一个很老的问题,但也许有人会发现答案很有用

nvprof
输出文件实际上是SQLite3数据库,您可以使用独立的SQLite3程序或以编程方式打开它们。时间线信息在这些表中(所有时间戳均以纳秒为单位):

  • CUPTI\u活动\u种类\u并发\u内核
    -有关内核的数据
  • CUPTI\u ACTIVITY\u KIND\u MEMCPY
    -关于内存拷贝的数据(非P2P)
  • CUPTI\u ACTIVITY\u KIND\u MEMCPY2
    -关于P2P内存拷贝的数据
  • CUPTI\u活动\u种类\u成员集
    -关于成员集的数据
  • CUPTI\u ACTIVITY\u KIND\u RUNTIME
    -有关CUDA运行时API调用的数据
  • CUPTI\u活动\u种类\u驱动程序
    -有关CUDA驱动程序API调用的数据
  • CUPTI\u活动\u种类\u标记
    -有关NVTX标记的数据。它的形式与其他表稍有不同,因为它没有
    start
    end
    字段。相反,标记的开始和结束是两个条目(结束有
    name=0

您可以使用
correlationId
字段将API调用与内核/memcopies/memset关联起来。

Wow,谢谢。虽然我现在不想做这件事,但几个月后我想我会利用这些花边新闻:-)。。。顺便问一下,你是怎么知道的?我在英伟达工作;-)。但是它实际上是有文档记录的(至少它是SQLite3DB),尽管我同意在整个文档中很难发现它。您打算用它做什么?自动化性能基准统计数据收集。如果你想要更多的细节,请找我。在这个问题的答案的帮助下,我编写了一个工具,用于将nvprof输出文件转换为Google事件跟踪格式。你可以在魔兽世界买到,谢谢。虽然我现在不想做这件事,但几个月后我想我会利用这些花边新闻:-)。。。顺便问一下,你是怎么知道的?我在英伟达工作;-)。但是它实际上是有文档记录的(至少它是SQLite3DB),尽管我同意在整个文档中很难发现它。您打算用它做什么?自动化性能基准统计数据收集。如果你想要更多的细节,请找我。在这个问题的答案的帮助下,我编写了一个工具,用于将nvprof输出文件转换为Google事件跟踪格式。你可以在