Fetch the repository succeeded.
监控并分析系统长时不调度的情况
nosched是一款基于ebpf的用于监控cpu长时间运行在系统态,使得内核无法进入调度流程从而导致其他任务得不到调度的工具。
sysak nosched [--help] [-t THRESH(ms)] [-f LOGFILE] [-s duration(s)]
-t 门限: 当内核超过门限时间不调度就记录,单位ms; 可选,默认10ms
-f log文件: 将log记录到指定文件;可选,默认在/var/log/sysak/nosched/nosched.log
-s durations:设置该程序运行多长时间,单位秒; 可选,默认永远运行
下面的例子使用nosched采样30秒,采样的结果存放在当前目录a.log文件中
$sudo sysak nosched -f a.log -s 30
上面结果a.log输出说明如下:
时间戳 发生CPU 任务名字 线程ID 内核延时 时间
| \ | | | |
TIME(nosched) CPU COMM TID LAT(ms) DATE
1645141.062124 0 test 535832 10 2022-07-31 18:14:50
<0xffffffff86a01b0f> apic_timer_interrupt
<0xffffffff868744a7> clear_page_erms
<0xffffffff861e6add> prep_new_page
<0xffffffff861ead9f> get_page_from_freelist
<0xffffffff861ec47e> __alloc_pages_nodemask
<0xffffffff8624cee3> alloc_pages_vma
<0xffffffff8621f2a8> do_anonymous_page
<0xffffffff86224f75> __handle_mm_fault
<0xffffffff86225436> handle_mm_fault
<0xffffffff8606fc9a> __do_page_fault
<0xffffffff8606ff92> do_page_fault
<0xffffffff86a0119e> async_page_fault
上面的日志记录了机器系统态长时间运行的现场信息。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。