为什么我没有得到 "thread_inst_executed"

Why don't I get "thread_inst_executed"

当我用

列出 nvprof 的指标时
nvprof --query-events

我明白了:

thread_inst_executed: Number of instructions executed by the active threads. For each instruction it increments by number of threads, including predicated-off threads, that execute the instruction. It does not include replays.

我想使用这个指标,所以我使用以下方法收集指标:

nvprof --csv --metrics thread_inst_executed,inst_executed,inst_executed_global_loads,inst_executed_global_stores,inst_executed_local_loads,inst_executed_local_stores,inst_executed_shared_loads,inst_executed_shared_stores,gld_transactions,gst_transactions,local_load_transactions,local_store_transactions,shared_load_transactions,shared_store_transactions,l2_read_transactions,l2_write_transactions,dram_read_transactions,dram_write_transactions,sysmem_read_transactions,sysmem_write_transactions ./my_program my arguments

输出包含我要求的所有指标...除了 thread_inst_executed。为什么不见了?我怎样才能得到它?

When I list nvprof's metrics with

nvprof --query-events

这不是一致的用法(强调已添加)。

使用nvprof(或nvvp),事件指标not the same thing

要查询事件,您可以使用:

--query-events

要查询指标,您可以使用:

--query-metrics

要进行概要分析,要求进行事件测量,您可以使用

--events name_of_event,...

要进行概要分析,要求进行公制测量,您可以使用

--metrics name_of_metric,...

如果你这样做:

--metrics name_of_event,...

--events name_of_metric,...

我不知道这是什么行为,但我不希望它正常工作。