公司有次压测存在一个问题:CPU资源压不上去,一直在40%已达到了性能瓶颈,后定位到原因,所在的服务器在压测过程中产生的中断都落在CPU0上处理,这种中断并没有均衡到各个CPU,导致单个CPU过载而形成瓶颈。(这个机器是新的物理机器)
解决方式是启用irqbalance服务(命令:service irqbalance start),让硬件中断在多个CPU中分配处理,从而解决单CPU过载的问题。
IRQBalance主要功能是可以合理的调配使用各个CPU核心,特别是对于目前主流多核心的CPU,简单的说就是能够把压力均匀的分配到各个CPU核心上,对提升性能有很大的帮助。
启用 irqbalance 服务,既可以提升性能,又可以降低能耗。irqbalance 用于优化中断分配,它会自动收集系统数据以分析使用模式,并依据系统负载状况将工作状态置于 Performance mode 或 Power-save mode。
处于 Performance mode 时,irqbalance 会将中断尽可能均匀地分发给各个 CPU core,以充分利用 CPU 多核,提升性能。
处于 Power-save mode 时,irqbalance 会将中断集中分配给第一个 CPU,以保证其它空闲 CPU 的睡眠时间,降低能耗。
开启IRQBalance服务:
service irqbalance start
关闭IRQBalance服务:
service irqbalance stop
关闭开机启动IRQBalance服务:
chkconfig --level 123456 irqbalance off
另外查看/proc/interrupts 这个文件可以看到各个cpu中断情况
直接top命令也可以查看cpu中断情况
参考: http://www.aikaiyuan.com/7109.html
中断:http://blog.csdn.net/joeyon1985/article/details/39127087
top命令:http://www.cnblogs.com/peida/archive/2012/12/24/2831353.html
相关推荐
官方离线安装包,亲测可用
离线安装包,亲测可用
深入代码,详谈irqbalance 分析irqbalance的主要功能,具体的处理方法,以及个人的看法
官方离线安装包,亲测可用
Linux IRQ 内核代码详解-Linux IRQ 内核代码详解-Linux IRQ 内核代码详解
通过把sudo service irqbalance stop; 然后执行该脚本 使用方法: /sbin/set_irq_affinity eth1 可以进行中断绑定指定的cpu,提高网卡收包效率 把下面“eth1” 修改成对应的网卡名称 irq=$(cat /proc/interrupts | ...
淘宝C1000K高性能服务器构建技术.ppt 顺应硬件和操作系统的变化方向,高度并发化应用!让独立的CPU核心,独立的cache, 独立的本地内存,独立的(soft)IRQ,独立的网卡,独立的磁盘,独立的Erlang调度器,独立的...
开启irqbalance 7. VM迁移 8. 带宽限速 9. 安全 10. 其他使用限制 11. 性能测试 12. windows虚拟机使用VF 13. 运维命令 14. 宿主屏蔽VF驱动 附. 包转发率测试方法 附. 参考文档 1. SRIOV介绍 ▷ 传统...
IRQ分配表.txt
Ipstate 性能检查工具 Irqbalance IRQ平衡守护进程 Libalo Linux自然不对称I/O存取库 Mlcrocode_ctl 更新x86/x86-64CPU代码的工具 Mkbootdisk 创建一个用于引导系统的引导软盘 Mlocate 按名称查找文件的一个实用工具...
详细介绍了IRQ中断的问题,介绍了IRQ的初始化,编写等。
IRQ外部中断
IRQ外部中断模块
防止IRQ蓝屏.bat
IRQ外部中断改进
PCI IRQ Routing Table Specification
飞思卡尔XS128 IRQ中断模块,文件里面直接是工程模块,可直接编译下载,同时附带说明文档txt
VBS to list all IRQ current Windows
基于TC2.0在内核模式下访问IRQ0调试成功。
IRQ外部中断改进1