utcon Posted November 28, 2011 Posted November 28, 2011 (edited) Добрый день. Есть шлюз (шейп, нат) (dummynet + ipfw) top -SPH last pid: 74548; load averages: 1.07, 1.02, 1.00 up 39+03:03:26 19:04:04 119 processes: 10 running, 88 sleeping, 1 zombie, 20 waiting CPU 0: 0.0% user, 0.0% nice, 16.7% system, 0.0% interrupt, 83.3% idle CPU 1: 0.0% user, 0.0% nice, 18.8% system, 0.0% interrupt, 81.3% idle CPU 2: 0.0% user, 0.0% nice, 0.0% system, 64.6% interrupt, 35.4% idle CPU 3: 0.0% user, 0.0% nice, 0.0% system, 75.0% interrupt, 25.0% idle CPU 4: 0.0% user, 0.0% nice, 40.4% system, 0.0% interrupt, 59.6% idle CPU 5: 0.0% user, 0.0% nice, 40.4% system, 0.0% interrupt, 59.6% idle CPU 6: 0.0% user, 0.0% nice, 6.3% system, 0.0% interrupt, 93.8% idle CPU 7: 0.0% user, 0.0% nice, 6.3% system, 0.0% interrupt, 93.8% idle Mem: 41M Active, 769M Inact, 1066M Wired, 55M Cache, 213M Buf, 37M Free Swap: 5243M Total, 5243M Free при этом [gw-151-20 ~]$ netstat -w1 input (Total) output packets errs idrops bytes packets errs bytes colls 355257 0 0 318256981 341995 0 293776057 0 Об]ясните пожалуйста, что за колонка interrupt напротив каждого ядра.(прерывания, но что за прерывания) И самое интересное - почему нагрузка в процентах только напротив 2-х из 8-ми ядер. В системе две pci-e сетевухи (одна 4-х головая, вторая 6-ти головая) [root@gw-151-7 /usr/home/kris]# vmstat -i interrupt total rate irq16: xhci1 19607884415 82363 irq18: em0 em1 em2+ 877008021 3683 irq19: em4 em5+ 478109820 2008 irq23: ehci0 ehci1 637712 2 cpu0:timer 981277648 4121 irq256: em6 883228 3 irq257: igb0:que 0 684588450 2875 irq258: igb0:que 1 757659213 3182 irq259: igb0:link 2 0 irq260: igb1:que 0 814657056 3422 irq261: igb1:que 1 831513082 3492 irq262: igb1:link 2 0 irq263: igb2:que 0 685350380 2878 irq264: igb2:que 1 763601256 3207 irq265: igb2:link 2 0 irq266: igb3:que 0 825591792 3467 irq267: igb3:que 1 838246720 3521 irq268: igb3:link 2 0 irq270: ahci1 991257 4 cpu1:timer 973962408 4091 cpu7:timer 579147261 2432 cpu2:timer 859086109 3608 cpu4:timer 705039272 2961 cpu3:timer 792264171 3327 cpu5:timer 806728568 3388 cpu6:timer 605893850 2545 Total 33470121697 140592 Edited November 28, 2011 by utcon Вставить ник Quote
Dyr Posted November 28, 2011 Posted November 28, 2011 (edited) А полностью top -aSCHIP можете показать? Так-то ответ, скорее всего, что прерывания от [очередей] сетёвок наверняка "сели" только на два процессора. sysctl net.isr крутили? Edited November 28, 2011 by Dyr Вставить ник Quote
utcon Posted November 28, 2011 Author Posted November 28, 2011 А полностью top -aSCHIP можете показать? Так-то ответ, скорее всего, что прерывания от [очередей] сетёвок наверняка "сели" только на два процессора. sysctl net.isr крутили? Вот top -aSCHIP last pid: 6748; load averages: 1.59, 1.65, 1.64 up 2+20:27:09 12:11:33 167 processes: 10 running, 118 sleeping, 39 waiting CPU 0: 0.0% user, 0.0% nice, 5.9% system, 20.1% interrupt, 74.0% idle CPU 1: 0.0% user, 0.0% nice, 2.0% system, 58.7% interrupt, 39.4% idle CPU 2: 0.0% user, 0.0% nice, 8.3% system, 0.0% interrupt, 91.7% idle CPU 3: 0.0% user, 0.0% nice, 9.4% system, 0.0% interrupt, 90.6% idle CPU 4: 0.0% user, 0.0% nice, 8.3% system, 0.0% interrupt, 91.7% idle CPU 5: 0.0% user, 0.0% nice, 7.1% system, 0.0% interrupt, 92.9% idle CPU 6: 0.0% user, 0.0% nice, 7.5% system, 0.0% interrupt, 92.5% idle CPU 7: 0.0% user, 0.0% nice, 3.1% system, 0.0% interrupt, 96.9% idle Mem: 41M Active, 324M Inact, 656M Wired, 256K Cache, 206M Buf, 824M Free Swap: 5243M Total, 5243M Free PID USERNAME PRI NICE SIZE RES STATE C TIME CPU COMMAND 11 root 155 ki31 0K 128K CPU7 7 59.5H 100.00% [idle{idle: cpu7}] 11 root 155 ki31 0K 128K CPU6 6 58.6H 98.49% [idle{idle: cpu6}] 11 root 155 ki31 0K 128K CPU2 2 55.3H 95.56% [idle{idle: cpu2}] 11 root 155 ki31 0K 128K CPU5 5 58.6H 95.36% [idle{idle: cpu5}] 11 root 155 ki31 0K 128K CPU3 3 58.1H 93.70% [idle{idle: cpu3}] 11 root 155 ki31 0K 128K RUN 4 57.1H 92.14% [idle{idle: cpu4}] 11 root 155 ki31 0K 128K CPU0 0 39.9H 79.79% [idle{idle: cpu0}] 12 root -88 - 0K 640K WAIT 1 21.9H 54.69% [intr{irq16: xhci1}] 11 root 155 ki31 0K 128K RUN 1 23.7H 33.54% [idle{idle: cpu1}] 0 root -92 0 0K 400K - 6 319:54 10.35% [kernel{igb3 que}] 0 root -92 0 0K 400K - 7 367:32 7.96% [kernel{igb1 que}] 12 root -92 - 0K 640K WAIT 0 311:56 6.01% [intr{irq266: igb3:que}] 12 root -92 - 0K 640K WAIT 0 260:54 5.96% [intr{irq260: igb1:que}] 0 root -92 0 0K 400K - 2 413:38 5.57% [kernel{igb2 que}] 0 root -92 0 0K 400K - 3 343:58 5.22% [kernel{igb3 que}] 0 root -92 0 0K 400K - 5 352:00 4.88% [kernel{igb1 que}] 0 root -92 0 0K 400K - 4 321:48 3.66% [kernel{igb0 que}] 12 root -92 - 0K 640K WAIT 1 200:37 3.66% [intr{irq258: igb0:que}] 12 root -92 - 0K 640K WAIT 1 236:08 3.42% [intr{irq267: igb3:que}] 12 root -92 - 0K 640K WAIT 1 192:13 3.27% [intr{irq261: igb1:que}] 0 root -92 0 0K 400K - 0 279:18 2.69% [kernel{em0 taskq}] 0 root -92 0 0K 400K - 1 295:56 2.39% [kernel{em3 taskq}] 12 root -92 - 0K 640K WAIT 1 190:55 2.29% [intr{irq264: igb2:que}] 12 root -92 - 0K 640K WAIT 0 227:42 1.07% [intr{irq257: igb0:que}] 12 root -92 - 0K 640K WAIT 0 243:57 0.88% [intr{irq263: igb2:que}] 0 root -92 0 0K 400K - 4 342:12 0.63% [kernel{igb2 que}] 0 root -92 0 0K 400K - 4 305:45 0.49% [kernel{igb0 que}] Что касается netisr [root@gw]# sysctl net.isr net.isr.numthreads: 8 net.isr.maxprot: 16 net.isr.defaultqlimit: 4096 net.isr.maxqlimit: 10240 net.isr.bindthreads: 1 net.isr.maxthreads: 8 net.isr.direct: 0 net.isr.direct_force: 0 net.isr.dispatch: direct Вставить ник Quote
Dyr Posted November 28, 2011 Posted November 28, 2011 (edited) Вас не смущает эта строка? 12 root -88 - 0K 640K WAIT 1 21.9H 54.69% [intr{irq16: xhci1}] А должна ;) Вам так сильно нужно USB3.0 на сервере? Соберите тогда драйвер модулем и подгружайте при необходимости. Кстати, я совершенно упустил её из вашего первого сообщения с vmstat -i irq16: xhci1 19607884415 82363 82 000 прерываний в секунду от контроллера USB3.0, это мощно. И можете PR засабмитить. Всё остальное на мой взгляд, выглядит просто шоколадно. Edited November 28, 2011 by Dyr Вставить ник Quote
utcon Posted November 28, 2011 Author Posted November 28, 2011 Вас не смущает эта строка? 12 root -88 - 0K 640K WAIT 1 21.9H 54.69% [intr{irq16: xhci1}] А должна ;) Вам так сильно нужно USB3.0 на сервере? Соберите тогда драйвер модулем и подгружайте при необходимости. Кстати, я совершенно упустил её из вашего первого сообщения с vmstat -i irq16: xhci1 19607884415 82363 82 000 прерываний в секунду от контроллера USB3.0, это мощно. И можете PR засабмитить. Всё остальное на мой взгляд, выглядит просто шоколадно. Огромное спасибо, 3.0 отключим. А чего только по двум ядрам разбросаны эти прерывания ? Есть вариант как то на это влиять ? (смущает что ядре 8-мь а разброс виден только на 2 ядра), Вставить ник Quote
Dyr Posted November 28, 2011 Posted November 28, 2011 (edited) А фиг его знает, по какому принципу он ездил по ядрам. :) Так-то у вас если поядерно смотреть, то все прерывания от очередей сосредоточены на первом ("1") ядре, а вся ядерная обработка раскидывается на потоки. Может быть, имеет смысл и без net.isr, хотя тут уже лучше пусть другие посоветуют. PID C CPU COMMAND 0 1 2.39% [kernel{em3taskq}] 12 1 2.29% [intr{irq264:igb2:que}] 12 1 3.27% [intr{irq261:igb1:que}] 12 1 3.42% [intr{irq267:igb3:que}] 12 1 3.66% [intr{irq258:igb0:que}] 12 1 54.69% [intr{irq16:xhci1}] 0 2 5.57% [kernel{igb2que}] 0 3 5.22% [kernel{igb3que}] 0 4 0.49% [kernel{igb0que}] 0 4 0.63% [kernel{igb2que}] 0 4 3.66% [kernel{igb0que}] 0 5 4.88% [kernel{igb1que}] 0 6 10.35% [kernel{igb3que}] 0 7 7.96% [kernel{igb1que}] Edited November 28, 2011 by Dyr Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.