禁用对某些函数及其所有后代的分析
Disable profiling on certain function and all its descendants
是否有可能最好使用函数属性来禁用对某个函数的分析?我想这样做是因为我需要分析在程序的多线程部分花费的时间。我不关心特定线程的细节,只关心整个批次花费的时间。
时间表:
+--------------------------------+
+--------------------------------+
---Main thread----+ Main thread waits for workers +----Main thread continues-----
+--------------------------------+
+--------------------------------+
t0 t1
我希望配置文件输出正确测量 t1-t0,以及对批处理的调用次数,但 mcount
不是线程安全的,因此必须以某种方式排除并行运行的内容。
Valgrind 不行,因为物理总线速度是主要问题。
我用最强大的 C++ 功能 }
解决了它。在范围的顶部,添加一个存储当前时间的对象。让其析构函数再次读取时间并取差。将输出写入文件。
是否有可能最好使用函数属性来禁用对某个函数的分析?我想这样做是因为我需要分析在程序的多线程部分花费的时间。我不关心特定线程的细节,只关心整个批次花费的时间。
时间表:
+--------------------------------+
+--------------------------------+
---Main thread----+ Main thread waits for workers +----Main thread continues-----
+--------------------------------+
+--------------------------------+
t0 t1
我希望配置文件输出正确测量 t1-t0,以及对批处理的调用次数,但 mcount
不是线程安全的,因此必须以某种方式排除并行运行的内容。
Valgrind 不行,因为物理总线速度是主要问题。
我用最强大的 C++ 功能 }
解决了它。在范围的顶部,添加一个存储当前时间的对象。让其析构函数再次读取时间并取差。将输出写入文件。