读书笔记,只记录核心要点,书中的核心例子
1、runqslower
列出运行队列中等待延迟超过阈值的线程,默认是超过了10毫秒
记录的距离是ttwu_do_wakeup()到finish_task_switch的时间。也就是说是发起唤醒某一个线程到这个线程被唤醒的延迟

唤醒5号任务,从ttwu_do_wakeup发起,一直到完成5号任务finish_task_switch,完成切换的时间延迟。
2、cpudist
唤醒之后在cpu上执行的时长

在cpu运行的时间
3、cpufreq
展示cpu的频率信息
4、profile
定时采集调用栈出现频率的bcc 工具,可以采集到cpu使用高的栈
5、offcputime
用于统计线程阻塞和脱离cpu运行的时间,同时输出调用栈信息,来理解阻塞的原因

统计从调度出去,进入睡眠,一直到io完成唤醒经历的时间
6.syscount
可以统计哪一些系统调用在某一时刻使用的比较

本文详细介绍了多个Linux内核性能分析工具,包括runqslower(监控线程延迟)、cpudist(测量CPU执行时长)、cpufreq(查看CPU频率信息)、profile(采集高CPU使用率的调用栈)、offcputime(统计线程阻塞时间及原因)、syscount(系统调用统计)、argdist和trace(分析系统调用参数频率)、funccount(函数调用频率统计)、softirqs和hardirqs(软硬中断CPU时间消耗)、smpcalls(跨CPU调用分析)、llcstat(最后一级缓存命中率监测)。这些工具帮助开发者深入理解系统性能瓶颈,进行优化。
最低0.47元/天 解锁文章
718

被折叠的 条评论
为什么被折叠?



