2024年11月7日

futex系统调用分析

摘要: futex - fast user-space locking futex是一个内核态和用户态共同参与实现的锁。它基于一个观察,大多数情况下可能并没有锁的争抢,所以没有必要每次都陷入内核态,可以首先在用户态查询一下锁是否被其他进程/线程占用,如果没有占用可直接返回,无需调用futex syscall 阅读全文

posted @ 2024-11-07 16:35 半山随笔 阅读(711) 评论(0) 推荐(1)

记录一次性能问题的解决

摘要: 最近在用schbench测试机器调度性能。测试是绑定在一个socket上进行的。当worker线程数等于socket包含的cpu数时耗时会发生一次跳变。主要是futex wake的时候执行时间变长。开始怀疑是kernel的执行逻辑发生了变化,但查看ftrace后发现没有变化。第二个怀疑点是kerne 阅读全文

posted @ 2024-11-07 12:45 半山随笔 阅读(52) 评论(0) 推荐(0)

libvirt/qemu设置numa distance

摘要: qemu可以模拟numa,设置numa内的memory,cpu,numa间distance。 qemu-system-x86_64 --help | grep numa -numa node[,mem=size][,cpus=firstcpu[-lastcpu]][,nodeid=node][,in 阅读全文

posted @ 2024-11-07 11:10 半山随笔 阅读(161) 评论(0) 推荐(0)

导航