8000 cpu_watcher 项目:目标是分析cpu 的运行状态 · Issue #551 · linuxkerneltravel/lmp · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
cpu_watcher 项目:目标是分析cpu 的运行状态 #551
Open
@helight

Description

@helight

cpu_watcher 项目:目标是分析cpu 的运行状态,将BCC_sar(lmp/eBPF_Supermarket/CPU_Subsystem/BCC_sar/src
/sar)改写成libbpf版本,目前libbpf版本的框架已经写好,放在了lmp/eBPF_Supermarket/CPU_Subsystem/libbpf_sar文件夹中。该工具应实现以下数据的采集:

  • proc/s: 每秒创建的进程数。此数值是通过fork数来统计的。
  • cswch/s: 每秒上下文切换数。
  • runqlen:各cpu的运行队列总长度。
  • irqtime:CPU响应irq中断所占用的时间。注意这是所有CPU时间的叠加,平均到每个CPU应该除以CPU个数。
  • softirq: CPU执行softirq所占用的时间,是所有CPU的叠加。softirq:irq中断的下半部,优先级比irq低,可被irq抢占。
  • idle: CPU处于空闲状态的时间,所有CPU的叠加。
  • kthread: CPU执行内核线程所占用的时间,所有CPU的叠加。不包括IDLE-0进程,因为此进程只执行空闲指令使CPU闲置。
  • sysc: CPU执行用户程序系统调用(syscall)所占用的时间,所有CPU的叠加。
  • utime:CPU执行普通用户进程时,花在用户态的时间,是所有CPU的叠加。

项目技术要求:

  • 熟悉Linux内核CPU子系统的技术原理
  • 熟悉Linux eBPF技术,能够通过eBPF实现内核事件的解析

运行要求:

TODO

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0