EDA365电子论坛网

标题: 快来看看XEN cpu 调度的问题吧 [打印本页]

作者: baqiao    时间: 2020-3-19 10:57
标题: 快来看看XEN cpu 调度的问题吧
; g2 |7 N' d: O' r9 i5 ]. w
公司新上了一个8核的cpu,上面用xen虚拟了2个Windows。
& g7 @9 W' U# c% K; _$ i但是通过各种配置,还是无法平衡cpu的压力。/ t# ?" n: z2 \. g0 L
大多都压在第一个cpu上。+ m6 z/ q" @9 \  z. V; E- U

$ w% a2 J' w3 m* r7 ^! U. P下面是top的数据
. R  n, y5 @* h) M* q/ i4 P3 H+ {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
) x2 Y, H: y/ H# B5 X0 zCpu1  :  0.0%us,  0.0%sy,  0.0%ni, 96.2%id,  0.0%wa,  0.0%hi,  0.0%si,  3.8%st3 ^; Q% J+ b3 l$ i% T  O0 j
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) ]# M. ^  q# H+ ?6 ]$ }/ i$ i/ ^
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. P7 O  Z1 o# \, h
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
: X& E) J: k6 M* H' B2 sCpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
6 {9 G9 |6 f* z" j5 a* v# aCpu6  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
" f3 Q, R% _) M! ]) l! }$ F3 mCpu7  :  1.0%us,  6.9%sy,  0.0%ni, 91.2%id,  0.0%wa,  0.0%hi,  0.0%si,  1.0%st' I: q2 v  W! o7 V6 m) t
; N' Z8 }* E2 K1 f
已经做了cpu和vcpu的绑定,但是效果不好2 v. [$ q- }  |/ `' h, s! v3 P
Name                              ID VCPUs   CPU State   Time(s) CPU Affinity5 |3 c# N% |1 Z$ J5 S0 l) [
Domain2                         28     0     6   r--    2337.3 4-75 O7 v2 J7 n% ?) d2 e( P8 a2 ^6 A4 ?
Domain2                         28     1     4   r--    2400.6 4-7  A% V% @7 L' f. n, g) k; s6 L% v
Domain2                         28     2     5   r--    2312.0 4-7
# C3 r. H4 ]- a% H8 M' v* D4 ]; D7 F0 `7 u" W" ]7 K
导致Windows断网等各种怪问题。( y* \( z' `# d! M( h; F/ g
* F* h  J5 v( y$ |  {' k
# E, C* ^9 z8 L- g7 O
+ c' w; @2 B; ]1 v
硬件中断发生频繁,是件很消耗 CPU 资源的事情,在多核 CPU 条件下如果有办法把大量硬件中断分配给不同的 CPU (core) 处理显然能很好的平衡性能。现在的服务器上动不动就是多 CPU 多核、多网卡、多硬盘,如果能让网卡中断独占1个 CPU (core)、磁盘 IO 中断独占1个 CPU 的话将会大大减轻单一 CPU 的负担、提高整体处理效率。1 h5 ]8 j  G8 H; l
1 w# d; _2 U) _6 Y0 a
看看系统上的中断是怎么分配在 CPU 上的,很显然 CPU0 上处理的中断多一些:- E- V' O6 g0 B$ K

, m7 t8 P- a. R# Y9 F# cat /proc/interrupts
) G) i1 T- y, B# s) o) L; Y# ?6 Y           CPU0       CPU1
( d7 _' z$ u/ G8 O: S6 I: i6 F  0:  918926335          0    IO-APIC-edge  timer
& d6 I3 a% `2 S+ P0 Q: U' n: y  1:          2          0    IO-APIC-edge  i8042
7 v: z# z& c2 S9 w( L6 y$ M( B  8:          0          0    IO-APIC-edge  rtc
! [* ?- p8 B: G6 M. _, ]  9:          0          0   IO-APIC-level  acpi
3 P, q3 m$ d. I12:          4          0    IO-APIC-edge  i8042$ v+ B1 g% _/ X' R% z7 ]# n- R
14:    8248017          0    IO-APIC-edge  ide0
, n" S& I: A- e50:        194          0   IO-APIC-level  ohci_hcd:usb2+ J( Y) f4 }; K; j- B) r
58:      31673          0   IO-APIC-level  sata_nv7 P! }9 J/ {9 c" U) E0 Q' D
90:    1070374          0         PCI-MSI  eth0
) m6 v0 I/ q. D' o, Q3 ^3 i233:         10          0   IO-APIC-level  ehci_hcd:usb1! z. \) W- S9 t5 J- d
NMI:       5077       20327 Y& U. x3 o0 c3 T/ w' ]1 ^
LOC:  918809969  918809894
4 ?& Y8 P* o. \' t$ O' oERR:          0
  t& v1 N7 K+ Z) q: Y7 r# JMIS:          0
作者: ExxNEN    时间: 2020-3-19 18:20
XEN cpu 调度




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2