zoukankan      html  css  js  c++  java
  • XEN cpu 调度问题

    公司新上了一个8核的cpu,上面用xen虚拟了2个Windows。
    但是通过各种配置,还是无法平衡cpu的压力。
    大多都压在第一个cpu上。

    下面是top的数据
    Cpu0  : 20.6%us, 65.7%sy,  0.0%ni, 13.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu1  :  0.0%us,  0.0%sy,  0.0%ni, 96.2%id,  0.0%wa,  0.0%hi,  0.0%si,  3.8%st
    Cpu2  :  1.0%us,  0.0%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu3  :  0.0%us,  0.0%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  1.0%st
    Cpu4  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu6  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu7  :  1.0%us,  6.9%sy,  0.0%ni, 91.2%id,  0.0%wa,  0.0%hi,  0.0%si,  1.0%st

    已经做了cpu和vcpu的绑定,但是效果不好
    Name                              ID VCPUs   CPU State   Time(s) CPU Affinity
    Domain2                         28     0     6   r--    2337.3 4-7
    Domain2                         28     1     4   r--    2400.6 4-7
    Domain2                         28     2     5   r--    2312.0 4-7

    导致Windows断网等各种怪问题。



    硬件中断发生频繁,是件很消耗 CPU 资源的事情,在多核 CPU 条件下如果有办法把大量硬件中断分配给不同的 CPU (core) 处理显然能很好的平衡性能。现在的服务器上动不动就是多 CPU 多核、多网卡、多硬盘,如果能让网卡中断独占1个 CPU (core)、磁盘 IO 中断独占1个 CPU 的话将会大大减轻单一 CPU 的负担、提高整体处理效率。

     看看系统上的中断是怎么分配在 CPU 上的,很显然 CPU0 上处理的中断多一些:

    # cat /proc/interrupts
               CPU0       CPU1
      0:  918926335          0    IO-APIC-edge  timer
      1:          2          0    IO-APIC-edge  i8042
      8:          0          0    IO-APIC-edge  rtc
      9:          0          0   IO-APIC-level  acpi
    12:          4          0    IO-APIC-edge  i8042
    14:    8248017          0    IO-APIC-edge  ide0
    50:        194          0   IO-APIC-level  ohci_hcd:usb2
    58:      31673          0   IO-APIC-level  sata_nv
    90:    1070374          0         PCI-MSI  eth0
    233:         10          0   IO-APIC-level  ehci_hcd:usb1
    NMI:       5077       2032
    LOC:  918809969  918809894
    ERR:          0
    MIS:          0
  • 相关阅读:
    刨析js代码执行机制
    H5离线缓存基础系列
    meta 详解
    如何成长为一名合格的web架构师?
    整理的互联网公司面试趋势
    http协议
    前端现在到底需要什么样的人才
    webpack 4.0 版本的简单使用
    vue的懒加载如何实现?
    Runtime的几个小例子(含Demo)
  • 原文地址:https://www.cnblogs.com/feisky/p/2246655.html
Copyright © 2011-2022 走看看