计算装配中每个任务的准确 cpu 使用情况

Calculating accurate cpu usage per task in assembly

我有一个用 C++ 编写的多任务程序,我想计算 CPU 每个线程在亚秒级基础上的使用情况(可能是 100 毫秒) 你可能知道 /proc/stat 或类似的东西对于那个时间分辨率来说不准确。

我想知道有没有一种方法可以计算汇编或 C/C++ 中每个线程消耗的时钟周期?

从 Linux 2.6.12 和 glibc 2.4 开始,您可以使用 clock_gettimeCLOCK_THREAD_CPUTIME_ID 类型的时钟来实现时间信息