上一页 1 2 3 4 5 6 ··· 10 下一页

2025年3月10日

linux中如何获取指定结构体内成员的偏移

摘要: 使用pahole可以查看内核中某个结构体内成员的偏移信息。比如要查看struct rq的信息。 pahole -C rq /usr/lib/debug/boot/vmlinux 这样就可以得到rq成员的详细偏移信息,结果bpf工具可以打印出对应的成员。 阅读全文

posted @ 2025-03-10 19:26 半山随笔 阅读(23) 评论(0) 推荐(0)

2025年2月27日

amd和intel在APIC timer虚拟化中的差异

摘要: 这里有两篇博客写得很好:KVM APIC Timer 模拟详解-CSDN博客 KVM CPU虚拟化_vapic-CSDN博客 在amd机器和intel机器上测试虚拟机性能时发现一个奇怪的问题。由于x86机器上没有为虚拟化专门设置timer设备,虚拟机内的timer依然需要使用物理机上的clock e 阅读全文

posted @ 2025-02-27 20:17 半山随笔 阅读(50) 评论(0) 推荐(0)

2025年2月9日

bpftrace打印内核全局变量

摘要: bpftrace自带的kaddr(char *name)函数可以用来返回指定全局变量的地址,通过解引用可以得到该全局变量的值。 例如,打印jiffies可以使用如下代码: printf("jiffies: %lu\n", *kaddr("jiffies")); 阅读全文

posted @ 2025-02-09 13:49 半山随笔 阅读(64) 评论(0) 推荐(0)

cpu0 softirq异常升高问题

摘要: 测试用例:在非cpu0上绑定执行两个耗cpu的进程,top -1查看系统软中断占比,发现cpu0的软中断占比升高。 原因排查: 查看/proc/softirqs,显示SCHED softirq增长很快。SCHED softirq负责负载均衡。负载均衡分为三种,周期性balance,nohz bala 阅读全文

posted @ 2025-02-09 13:43 半山随笔 阅读(88) 评论(0) 推荐(0)

2025年2月1日

nohz load balance选择cpu

摘要: 如果开启了nohz,在busy的cpu上,每次时钟中断的时候会发起nohz load balance。它的一个关键点是选择一个idle cpu。 static void nohz_balancer_kick(struct rq *rq) { ... out: if (flags) kick_ilb( 阅读全文

posted @ 2025-02-01 18:25 半山随笔 阅读(26) 评论(0) 推荐(0)

2024年12月19日

linux负载均衡(四)migration线程

摘要: 在本系列第二篇中,我们讲到,如果在sched_balance_rq中没能成功迁移进程,进而需要active balance,那么会让migration线程去进行更激进的线程迁移。本篇来介绍下migration线程。 在linux系统中使用ps aux | grep migration,我们会看到一系 阅读全文

posted @ 2024-12-19 11:58 半山随笔 阅读(346) 评论(0) 推荐(0)

2024年12月18日

linux负载均衡(三)select_task_rq_fair分析

摘要: 有三种情况需要为task选择cpu:刚创建的进程(fork),刚exec的进程(exec),刚被唤醒的进程(wakeup)他们都会调用select_task_rq,对于cfs,就是select_task_rq_fair。 static int select_task_rq_fair(struct t 阅读全文

posted @ 2024-12-18 20:53 半山随笔 阅读(118) 评论(0) 推荐(0)

linux kernel负载均衡分析(一)

摘要: linux的负载均衡是一个很负载的过程,本篇讲一下触发负载均衡的流程,下一篇具体讲load balance流程。 负载均衡是kernel调度一个重要的方面,下面是三篇博客,讲得很好。 CFS任务的负载均衡(概述) (wowotech.net) CFS任务的负载均衡(任务放置) (wowotech.n 阅读全文

posted @ 2024-12-18 20:36 半山随笔 阅读(271) 评论(0) 推荐(0)

linux内核负载均衡(二)sched_balance_rq详解

摘要: 这里有一篇文章讲得很好:http://www.wowotech.net/process_management/load_balance_function.html 我们以6.13-rc2作为基础来分析。 上一篇讲到了触发负载均衡的三种方式:newilde balance,nohz idle bala 阅读全文

posted @ 2024-12-18 20:07 半山随笔 阅读(263) 评论(0) 推荐(0)

2024年12月6日

linux内核开发者大会链接

摘要: 第19届中国 Linux 内核开发者大会&主论坛 - 思否编程 - 学编程,来思否,升职加薪快人一步 阅读全文

posted @ 2024-12-06 11:18 半山随笔 阅读(16) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 ··· 10 下一页

导航