在Linux上,我们如何按照线程的系统CPU(而不是总体CPU或用户CPU)对线程进行排序?

在Linux上,我们如何按照线程的系统CPU(而不是总体CPU或用户CPU)对线程进行排序?,linux,linux-kernel,cpu,Linux,Linux Kernel,Cpu,Top可用于按总体CPU对进程/线程进行排序。只按系统CPU对线程进行排序怎么样?我试图调查一个服务器上高系统CPU的案例,strace根据线程进行的系统调用给出了系统时间的分解。但是,如何识别对系统CPU贡献最大的线程(本质上是进行最昂贵系统调用的线程)?strace报告的系统调用可能与内核中主动执行某些操作所花费的时间相关,也可能与此无关。事实上,你大部分时间都不想看这个 你想要的是一个火焰图,然后从那里开始。特别是,可能内核在一开始就花费了很多时间,甚至没有执行任何系统调用

Top可用于按总体CPU对进程/线程进行排序。只按系统CPU对线程进行排序怎么样?我试图调查一个服务器上高系统CPU的案例,strace根据线程进行的系统调用给出了系统时间的分解。但是,如何识别对系统CPU贡献最大的线程(本质上是进行最昂贵系统调用的线程)?

strace报告的系统调用可能与内核中主动执行某些操作所花费的时间相关,也可能与此无关。事实上,你大部分时间都不想看这个

你想要的是一个火焰图,然后从那里开始。特别是,可能内核在一开始就花费了很多时间,甚至没有执行任何系统调用