Elisium Опубликовано 23 октября, 2013 (изменено) · Жалоба Доброго дня, коллеги. Есть проблемы с аномально высокой загрузкой данного сервера, который используется как шейпер. С данными показателями у сервера ЛА>10, ошибок на интерфейсах нет и он не может адекватно нарезать скорости клиентам. Например, на тарифе 80МБт реально получаемая клиентом скорость примерно 25МБт Что можете посоветовать по "пациенту" ? п.с. Что бы не раздувать пост, необходимую диагностическую инфу прикрепил в файле. [root@router /etc]# uname -a FreeBSD router 9.1-STABLE FreeBSD 9.1-STABLE #1 r251806M: Tue Jun 18 13:03:53 EEST 2013 root@softrouter:/usr/obj/usr/src/sys/ROUTER amd64 [root@router /etc]# sysctl hw.model hw.model: Intel(R) Xeon(R) CPU X5680 @ 3.33GHz [root@router /etc]# top -SHPI last pid: 54434; load averages: 9.32, 10.07, 10.49 up 53+16:59:01 23:30:10 204 processes: 23 running, 138 sleeping, 43 waiting CPU 0: 0.0% user, 0.0% nice, 20.9% system, 58.7% interrupt, 20.5% idle CPU 1: 0.0% user, 0.0% nice, 0.0% system, 70.9% interrupt, 29.1% idle CPU 2: 0.0% user, 0.0% nice, 0.0% system, 69.3% interrupt, 30.7% idle CPU 3: 0.0% user, 0.0% nice, 0.0% system, 58.3% interrupt, 41.7% idle CPU 4: 0.0% user, 0.0% nice, 0.0% system, 66.9% interrupt, 33.1% idle CPU 5: 0.0% user, 0.0% nice, 0.0% system, 65.0% interrupt, 35.0% idle CPU 6: 0.0% user, 0.0% nice, 0.0% system, 74.8% interrupt, 25.2% idle CPU 7: 0.0% user, 0.0% nice, 0.4% system, 79.9% interrupt, 19.7% idle CPU 8: 6.3% user, 0.0% nice, 5.1% system, 0.0% interrupt, 88.6% idle CPU 9: 1.6% user, 0.0% nice, 3.9% system, 0.0% interrupt, 94.5% idle CPU 10: 0.8% user, 0.0% nice, 7.1% system, 2.8% interrupt, 89.4% idle CPU 11: 9.1% user, 0.0% nice, 2.0% system, 2.8% interrupt, 86.2% idle Mem: 175M Active, 4102M Inact, 1065M Wired, 1230M Buf, 6449M Free Swap: 1024M Total, 1024M Free gate_22102013_2339.txt Изменено 23 октября, 2013 пользователем Elisium Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 23 октября, 2013 · Жалоба net.isr.bindthreads: 1 net.isr.maxthreads: 64 net.isr.dispatch: deferred NetFlow IPv4 cache - отключить Ещё желательно на HPET таймеры перейти, если есть а остальные отключить. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 23 октября, 2013 (изменено) · Жалоба Первое пробовал - эффекта не заметил. Но поставлю еще раз - мало ли =) п.с. Выставлял вот так #net.isr.numthreads=12 #net.isr.bindthreads=1 #net.isr.maxthreads=12 #net.isr.dispatch=deferred Второе: с шейпера экспортится нетфлов. При его отключении нагрузка ощутимо падает. Но пока выключить его нет возможности. По таймерам: Сейчас стоит kern.eventtimer.timer: LAPIC Остальные (HPET и RTC) показывают (судя по сисцтл) меньшую точность. Изменено 23 октября, 2013 пользователем Elisium Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 23 октября, 2013 · Жалоба net.isr.maxthreads Ставится в лоадере, система сама уменьшает его до количества процов. Второе: с шейпера экспортится нетфлов. При его отключении нагрузка ощутимо падает. Но пока выключить его нет возможности. Или имеется ввиду net.inet.netflow_cachesize=0 ? Тогда тюнить нетграф, а то там ошибок много. По таймерам: Сейчас стоит kern.eventtimer.timer: LAPIC Остальные (HPET и RTC) показывают (судя по сисцтл) меньшую точность. Зато прерываний как то много от него. В лоадере # POWER SAVING: https://wiki.freebsd.org/TuningPowerConsumption hint.p4tcc.0.disabled="1" # Disable CPU Frequency Thermal Control hint.acpi_throttle.0.disabled="1" # Disable CPU throtling hint.hpet.0.legacy_route="1" # HPET will steal IRQ0 of i8254 timer and IRQ8 of RTC hint.apic.0.clock="0" # Disable local APIC timers hint.atrtc.0.clock="0" # Disable RTC timer hint.attimer.0.clock=0 # Disable AT timer Только если HPET в системе нет то оно не загрузится :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 23 октября, 2013 · Жалоба По поводу net.isr.numthreads=1 (дефолт) - есть ли смысл его менять ? Дето тут же на Наге читал, что нужно выставлять по кол-ву процов. "Тюнить нетграф" - выставлен буфер NetFlow IPv4 cache в 524288 путем изменением исходников. Можно выставить и больше, но через некоторое время все равно появляются ошибки. Как еще его можно тюнить ? Зато прерываний как то много от него. Хм... А где это видно ? Вроде по 10К на очередь сетевки и 1К на ядро норма. Или я не о том ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 23 октября, 2013 · Жалоба По поводу net.isr.numthreads=1 (дефолт) - есть ли смысл его менять ? Дето тут же на Наге читал, что нужно выставлять по кол-ву процов. поставьте махтреадс=128 (или любое число больше процов) в лоадер и оно само проставит колличество процов туда и в нумтреадс тоже. Ещё есть крутилка с фастфорвадингом, и правила в ipfw по отимизировать как то и вроде всё что я знаю из того что влияет на загрузку. "Тюнить нетграф" - выставлен буфер NetFlow IPv4 cache в 524288 путем изменением исходников. Вообще я про # NetGraph net.graph.maxalloc="65535" # Maximum number of non-data queue items to allocate / limit the damage of a leak net.graph.maxdata="65535" # Maximum number of data queue items to allocate / limit the damage of a DoS в лоадере, но действительно, не ваш случай, у вас там видно лимит в 524291, вот его ещё увеличить либо посмотреть на код, и подумать надо ли. Хм... А где это видно ? Вроде по 10К на очередь сетевки и 1К на ядро норма. Или я не о том ? vmstat -i cpu0:timer 5225059319 1125 cpu5:timer 5224985142 1125 cpu11:timer 5043936872 1086 cpu4:timer 5224984378 1125 cpu10:timer 5039893778 1086 cpu1:timer 5224987774 1125 cpu8:timer 5028529588 1083 cpu2:timer 5224985184 1125 cpu6:timer 5224890204 1125 cpu3:timer 5225007766 1125 cpu9:timer 5033193913 1084 cpu7:timer 5224897428 1125 в systat -vm тоже видно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 23 октября, 2013 · Жалоба Выставил. Ночью перегружу, завтра отпишусь. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 24 октября, 2013 (изменено) · Жалоба Перегрузил. vmstat -I interrupt total rate irq0: hpet0:t0 507070 1630 irq9: acpi0 1 0 irq16: uhci3 uhci4* 29 0 irq18: atapci0 14593 46 irq19: uhci0 uhci1* 29 0 irq266: ix0:que 0 2710736 8716 irq267: ix0:que 1 3519245 11315 irq268: ix0:que 2 2599066 8357 irq269: ix0:que 3 2235942 7189 irq270: ix0:que 4 2800578 9005 irq271: ix0:que 5 3312546 10651 irq272: ix0:que 6 2332010 7498 irq273: ix0:que 7 2661291 8557 irq274: ix0:link 1 0 irq275: ix1:que 0 1983657 6378 irq276: ix1:que 1 2131004 6852 irq277: ix1:que 2 2024627 6510 irq278: ix1:que 3 2079221 6685 irq279: ix1:que 4 2183279 7020 irq280: ix1:que 5 2080351 6689 irq281: ix1:que 6 1998859 6427 irq282: ix1:que 7 1767743 5684 irq283: ix1:link 1 0 Total 38941879 125215 sysctl net.isr net.isr.numthreads: 12 net.isr.maxprot: 16 net.isr.defaultqlimit: 4096 net.isr.maxqlimit: 10240 net.isr.bindthreads: 1 net.isr.maxthreads: 12 net.isr.direct: 0 net.isr.direct_force: 0 net.isr.dispatch: deferred top -SHPI last pid: 77868; load averages: 1.06, 1.07, 0.59 up 0+00:05:24 05:18:2 208 processes: 14 running, 134 sleeping, 60 waiting CPU 0: 0.0% user, 0.0% nice, 0.0% system, 4.3% interrupt, 95.7% idle CPU 1: 0.0% user, 0.0% nice, 0.4% system, 4.3% interrupt, 95.3% idle CPU 2: 0.4% user, 0.0% nice, 0.0% system, 4.7% interrupt, 94.9% idle CPU 3: 0.0% user, 0.0% nice, 0.8% system, 6.7% interrupt, 92.5% idle CPU 4: 0.0% user, 0.0% nice, 0.0% system, 5.5% interrupt, 94.5% idle CPU 5: 0.0% user, 0.0% nice, 0.0% system, 5.5% interrupt, 94.5% idle CPU 6: 0.4% user, 0.0% nice, 0.4% system, 7.1% interrupt, 92.2% idle CPU 7: 0.0% user, 0.0% nice, 0.0% system, 2.7% interrupt, 97.3% idle CPU 8: 0.0% user, 0.0% nice, 0.4% system, 0.0% interrupt, 99.6% idle CPU 9: 0.0% user, 0.0% nice, 0.8% system, 0.0% interrupt, 99.2% idle CPU 10: 12.2% user, 0.0% nice, 0.0% system, 0.0% interrupt, 87.8% idle CPU 11: 0.0% user, 0.0% nice, 1.6% system, 0.0% interrupt, 98.4% idle Mem: 61M Active, 24M Inact, 317M Wired, 32M Buf, 11G Free Swap: 1024M Total, 1024M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 155 ki31 0K 192K CPU9 9 4:51 100.00% idle{idle: cpu9} 11 root 155 ki31 0K 192K CPU0 0 4:58 99.76% idle{idle: cpu0} 11 root 155 ki31 0K 192K CPU2 2 4:58 99.76% idle{idle: cpu2} 11 root 155 ki31 0K 192K CPU3 3 4:59 99.27% idle{idle: cpu3} 11 root 155 ki31 0K 192K CPU8 8 4:51 99.27% idle{idle: cpu8} 11 root 155 ki31 0K 192K CPU11 11 4:53 98.78% idle{idle: cpu11} 11 root 155 ki31 0K 192K CPU4 4 4:57 98.68% idle{idle: cpu4} 11 root 155 ki31 0K 192K CPU1 1 4:57 98.49% idle{idle: cpu1} 11 root 155 ki31 0K 192K RUN 7 4:56 98.39% idle{idle: cpu7} 11 root 155 ki31 0K 192K CPU5 5 4:56 98.10% idle{idle: cpu5} 11 root 155 ki31 0K 192K CPU6 6 4:55 96.58% idle{idle: cpu6} 11 root 155 ki31 0K 192K CPU10 10 4:51 94.19% idle{idle: cpu10} 1465 root 20 -15 76420K 28896K nanslp 11 0:38 5.76% perl5.14.4 1462 root 20 0 60012K 12416K nanslp 3 0:34 2.88% perl5.14.4 12 root -92 - 0K 976K WAIT 1 0:09 2.49% intr{irq267: ix0:que } 12 root -92 - 0K 976K WAIT 5 0:09 2.49% intr{irq271: ix0:que } 12 root -92 - 0K 976K WAIT 7 0:10 2.39% intr{irq273: ix0:que } 12 root -92 - 0K 976K WAIT 4 0:08 2.39% intr{irq279: ix1:que } 12 root -92 - 0K 976K CPU5 5 0:08 2.29% intr{irq280: ix1:que } 12 root -92 - 0K 976K WAIT 6 0:09 2.10% intr{irq281: ix1:que } 12 root -92 - 0K 976K WAIT 4 0:08 1.95% intr{irq270: ix0:que } 12 root -92 - 0K 976K WAIT 6 0:08 1.76% intr{irq272: ix0:que } 12 root -92 - 0K 976K WAIT 2 0:07 1.76% intr{irq268: ix0:que } 12 root -92 - 0K 976K WAIT 7 0:07 1.76% intr{irq282: ix1:que } 12 root -92 - 0K 976K WAIT 0 0:06 1.76% intr{irq266: ix0:que } 12 root -92 - 0K 976K WAIT 1 0:07 1.66% intr{irq276: ix1:que } 12 root -92 - 0K 976K WAIT 3 0:07 1.66% intr{irq278: ix1:que } 12 root -92 - 0K 976K WAIT 0 0:05 1.66% intr{irq275: ix1:que } 12 root -92 - 0K 976K WAIT 3 0:06 1.56% intr{irq269: ix0:que } 12 root -92 - 0K 976K WAIT 2 0:07 1.46% intr{irq277: ix1:que } Нагрузки сейчас почти нет, смотреть пока нечего. п.с. Таймер выставил HPET Изменено 24 октября, 2013 пользователем Elisium Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 24 октября, 2013 · Жалоба Собственно, вот нынешнее состояние: п.с. тихий ужас.... top -SHPI last pid: 32450; load averages: 13.46, 13.53, 13.11 up 0+15:59:51 21:12:50 216 processes: 25 running, 142 sleeping, 49 waiting CPU 0: 0.0% user, 0.0% nice, 8.7% system, 75.6% interrupt, 15.7% idle CPU 1: 0.0% user, 0.0% nice, 0.0% system, 86.6% interrupt, 13.4% idle CPU 2: 0.0% user, 0.0% nice, 0.0% system, 71.3% interrupt, 28.7% idle CPU 3: 0.0% user, 0.0% nice, 0.0% system, 73.6% interrupt, 26.4% idle CPU 4: 0.0% user, 0.0% nice, 0.0% system, 78.7% interrupt, 21.3% idle CPU 5: 0.0% user, 0.0% nice, 0.0% system, 74.0% interrupt, 26.0% idle CPU 6: 0.0% user, 0.0% nice, 0.0% system, 84.6% interrupt, 15.4% idle CPU 7: 0.0% user, 0.0% nice, 0.0% system, 88.6% interrupt, 11.4% idle CPU 8: 2.0% user, 0.0% nice, 3.9% system, 0.0% interrupt, 94.1% idle CPU 9: 2.0% user, 0.0% nice, 3.5% system, 0.0% interrupt, 94.5% idle CPU 10: 2.4% user, 0.0% nice, 3.1% system, 5.9% interrupt, 88.6% idle CPU 11: 1.6% user, 0.0% nice, 3.5% system, 0.0% interrupt, 94.9% idle Mem: 68M Active, 28M Inact, 451M Wired, 50M Buf, 11G Free Swap: 1024M Total, 1024M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 155 ki31 0K 192K RUN 10 874:27 98.00% idle{idle: cpu10} 11 root 155 ki31 0K 192K CPU11 11 874:08 96.00% idle{idle: cpu11} 11 root 155 ki31 0K 192K CPU9 9 873:14 92.19% idle{idle: cpu9} 11 root 155 ki31 0K 192K CPU8 8 873:15 91.70% idle{idle: cpu8} 12 root -92 - 0K 976K WAIT 7 241:08 53.76% intr{irq282: ix1:que } 12 root -92 - 0K 976K RUN 6 237:47 51.56% intr{irq281: ix1:que } 12 root -92 - 0K 976K CPU1 1 199:58 47.07% intr{irq276: ix1:que } 12 root -92 - 0K 976K RUN 0 198:20 46.88% intr{irq275: ix1:que } 12 root -92 - 0K 976K RUN 3 199:18 45.56% intr{irq278: ix1:que } 12 root -92 - 0K 976K WAIT 2 203:06 44.68% intr{irq277: ix1:que } 12 root -92 - 0K 976K CPU5 5 201:35 43.90% intr{irq280: ix1:que } 12 root -92 - 0K 976K WAIT 4 199:03 42.97% intr{irq279: ix1:que } 12 root -92 - 0K 976K WAIT 7 177:13 39.45% intr{irq273: ix0:que } 12 root -92 - 0K 976K RUN 0 158:25 34.67% intr{irq266: ix0:que } 12 root -92 - 0K 976K RUN 1 163:39 34.08% intr{irq267: ix0:que } 12 root -92 - 0K 976K CPU6 6 181:44 32.47% intr{irq272: ix0:que } 12 root -92 - 0K 976K CPU3 3 160:30 31.88% intr{irq269: ix0:que } 12 root -92 - 0K 976K WAIT 5 159:57 31.40% intr{irq271: ix0:que } 12 root -92 - 0K 976K CPU2 2 160:29 30.57% intr{irq268: ix0:que } 12 root -92 - 0K 976K CPU4 4 159:39 30.57% intr{irq270: ix0:que } 11 root 155 ki31 0K 192K RUN 4 584:52 29.79% idle{idle: cpu4} 11 root 155 ki31 0K 192K RUN 5 580:14 27.88% idle{idle: cpu5} 11 root 155 ki31 0K 192K RUN 2 580:18 27.49% idle{idle: cpu2} 11 root 155 ki31 0K 192K RUN 3 583:56 25.20% idle{idle: cpu3} 11 root 155 ki31 0K 192K RUN 1 580:17 21.39% idle{idle: cpu1} 11 root 155 ki31 0K 192K RUN 0 557:14 18.55% idle{idle: cpu0} 11 root 155 ki31 0K 192K RUN 6 520:48 14.16% idle{idle: cpu6} 11 root 155 ki31 0K 192K RUN 7 522:35 8.79% idle{idle: cpu7} 1465 root 20 -15 76420K 29324K nanslp 10 57:55 5.18% perl5.14.4 12 root -60 - 0K 976K WAIT 2 29:00 4.98% intr{swi4: clock} 1462 root 22 0 60012K 12588K sbwait 9 100:43 4.79% perl5.14.4 vmstat -z [root@router /]# vmstat -z ITEM SIZE LIMIT USED FREE REQ FAIL SLEEP ... NetFlow IPv4 cache: 88, 1048582, 573907, 23377,943456662, 0, 0 NetFlow IPv6 cache: 128, 1048582, 0, 0, 0, 0, 0 vmstat -i [root@router /]# vmstat -i interrupt total rate irq0: hpet0:t0 64946101 1128 irq9: acpi0 1 0 irq16: uhci3 uhci4* 29 0 irq18: atapci0 96613 1 irq19: uhci0 uhci1* 29 0 irq266: ix0:que 0 646811676 11240 irq267: ix0:que 1 637166007 11073 irq268: ix0:que 2 630388778 10955 irq269: ix0:que 3 620951022 10791 irq270: ix0:que 4 638953940 11104 irq271: ix0:que 5 645744077 11222 irq272: ix0:que 6 586050393 10184 irq273: ix0:que 7 587270231 10206 irq274: ix0:link 1 0 irq275: ix1:que 0 665288570 11561 irq276: ix1:que 1 641306496 11145 irq277: ix1:que 2 646880123 11242 irq278: ix1:que 3 639931448 11121 irq279: ix1:que 4 642242035 11161 irq280: ix1:que 5 645626462 11220 irq281: ix1:que 6 593175443 10308 irq282: ix1:que 7 595406712 10347 irq283: ix1:link 1 0 Total 10128236188 176017 sysctl net.isr [root@router /]# sysctl net.isr net.isr.numthreads: 12 net.isr.maxprot: 16 net.isr.defaultqlimit: 4096 net.isr.maxqlimit: 10240 net.isr.bindthreads: 1 net.isr.maxthreads: 12 net.isr.direct: 0 net.isr.direct_force: 0 net.isr.dispatch: deferred netstat -w1 [root@router /]# netstat -w1 input (Total) output packets errs idrops bytes packets errs bytes colls 1225130 0 0 940778855 1208223 0 927625066 0 1119113 0 0 863390823 1122723 0 429818426 0 1153175 0 0 888382902 1141793 0 920127821 0 1152994 0 0 891305057 1141661 0 902229198 0 1192655 0 0 916494180 1181517 0 922589104 0 systat -if [root@router /]# systat -if /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average |||||||||||||||||||||||||||||||||||||||||||||||||| 12.9 Interface Traffic Peak Total vlan1211 in 323.839 MB/s 323.839 MB/s 8.777 TB out 130.211 MB/s 133.840 MB/s 4.850 TB vlan333 in 133.698 MB/s 136.253 MB/s 4.930 TB out 320.890 MB/s 320.890 MB/s 8.721 TB lo0 in 0.000 KB/s 0.000 KB/s 6.297 MB out 0.000 KB/s 0.000 KB/s 6.297 MB ix1 in 330.433 MB/s 330.433 MB/s 8.904 TB out 141.288 MB/s 142.073 MB/s 4.924 TB ix0 in 136.183 MB/s 138.272 MB/s 4.998 TB out 347.493 MB/s 347.493 MB/s 8.897 TB Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 24 октября, 2013 · Жалоба net.isr.dispatch крутится на лету. net.inet.ip.fastforwarding=0 ? Гипертрединг включён? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 25 октября, 2013 · Жалоба net.inet.ip.fastforwarding=1 net.inet.ip.dummynet.io_fast=1 HT выключен - установлено два проца. Вернул все как было, ибо нагрузка заметно выросла. Увеличил обьем кеша для нетфлоу - поставил 1М. Ошибок в его сторону не наблюдается. Поправили шейпер. Было #unlim 50 day ${fwcmd} pipe 500 config mask dst-ip 0xffffffff bw 50Mbit/s queue 10 gred 0.002/15/30/0.1 ${fwcmd} pipe 501 config mask src-ip 0xffffffff bw 50Mbit/s queue 10 gred 0.002/15/30/0.1 Стало #unlim 50 day ${fwcmd} pipe 500 config mask dst-ip 0xffffffff bw 50Mbit/s queue 100 ${fwcmd} pipe 501 config mask src-ip 0xffffffff bw 50Mbit/s queue 100 Тарифная скорость вернулась +- в норму Но так и остался открытым вопрос, что еще можно сделать для снижения нагрузки. Ликвидировать пользователей не предлагать =) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 25 октября, 2013 · Жалоба Принимаете не fullview? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 26 октября, 2013 · Жалоба Нет. Принимаем\отдаем дефолты. Иксы рулятся ранее на циске. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 26 октября, 2013 · Жалоба Значит надо профилировать! :> Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 26 октября, 2013 · Жалоба net.inet.ip.fastforwarding=1 =0 чтобы по netisr разложило. (в добавок к тем настройкам что выше) Вернул все как было, ибо нагрузка заметно выросла. Ещё димминет нужно прибить к опред ядру. Скрипт где то на форуме есть. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
st_re Опубликовано 26 октября, 2013 · Жалоба Ещё димминет нужно прибить к опред ядру. Скрипт где то на форуме есть. Не просто определенному, а именно дамминет нужно прибивать к 0. На всех других оно жреть ЦПУ.. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 26 октября, 2013 · Жалоба Дамминет прибит к 0му ядру. Однако, в час пик его загрузка поднимается до 5%. Ок, сегодня ночью попробую опять опции нет.иср с выключеным фастфорвардингом. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 26 октября, 2013 · Жалоба Мне всегда думалось, что дамминет на 0ом ядре просто не учитывается в общей нагрузке :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 26 октября, 2013 · Жалоба А что мешает просто раскидать прерывания на все 12 ядер вместо текущих 8? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 26 октября, 2013 · Жалоба А что мешает просто раскидать прерывания на все 12 ядер вместо текущих 8? Ну, формально, ничего =) Просто сетевух две - у каждой по 8 очередей. А процов 12. Как бы, красиво не прибить. п.с. Пробовал. Видимого эффекта не обнаружено. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 27 октября, 2013 · Жалоба Собственно, вот: При включенном deferred и fastforwarding=0 top -SHPI last pid: 35044; load averages: 6.32, 6.53, 6.85 up 0+22:02:23 01:11:46 216 processes: 19 running, 141 sleeping, 56 waiting CPU 0: 0.0% user, 0.0% nice, 5.9% system, 60.2% interrupt, 33.9% idle CPU 1: 0.8% user, 0.0% nice, 0.0% system, 58.3% interrupt, 40.9% idle CPU 2: 0.0% user, 0.0% nice, 0.0% system, 59.4% interrupt, 40.6% idle CPU 3: 0.0% user, 0.0% nice, 0.0% system, 54.7% interrupt, 45.3% idle CPU 4: 0.4% user, 0.0% nice, 0.0% system, 59.1% interrupt, 40.6% idle CPU 5: 0.4% user, 0.0% nice, 0.8% system, 62.6% interrupt, 36.2% idle CPU 6: 0.4% user, 0.0% nice, 0.0% system, 65.4% interrupt, 34.3% idle CPU 7: 0.0% user, 0.0% nice, 0.0% system, 61.0% interrupt, 39.0% idle CPU 8: 2.8% user, 0.0% nice, 2.8% system, 5.1% interrupt, 89.4% idle CPU 9: 5.1% user, 0.0% nice, 2.8% system, 5.1% interrupt, 87.0% idle CPU 10: 2.4% user, 0.0% nice, 1.6% system, 9.1% interrupt, 87.0% idle CPU 11: 0.8% user, 0.0% nice, 1.6% system, 9.4% interrupt, 88.2% idle Mem: 62M Active, 23M Inact, 1008M Wired, 1078M Buf, 10G Free Swap: 1024M Total, 1024M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 155 ki31 0K 192K CPU8 8 935:48 84.96% idle{idle: cpu8} 11 root 155 ki31 0K 192K CPU9 9 941:06 81.40% idle{idle: cpu9} 11 root 155 ki31 0K 192K RUN 10 683:30 81.15% idle{idle: cpu10} 11 root 155 ki31 0K 192K RUN 11 685:01 80.86% idle{idle: cpu11} 12 root -72 - 0K 976K WAIT 7 203:36 57.67% intr{swi1: netisr 7} 12 root -72 - 0K 976K CPU6 6 205:03 56.88% intr{swi1: netisr 6} 12 root -72 - 0K 976K WAIT 4 173:33 54.05% intr{swi1: netisr 4} 12 root -72 - 0K 976K CPU1 1 168:55 52.20% intr{swi1: netisr 1} 12 root -72 - 0K 976K WAIT 2 172:14 51.86% intr{swi1: netisr 2} 12 root -72 - 0K 976K CPU3 3 170:35 51.76% intr{swi1: netisr 3} 12 root -72 - 0K 976K WAIT 5 177:23 51.27% intr{swi1: netisr 5} 12 root -72 - 0K 976K CPU0 0 170:25 50.88% intr{swi1: netisr 0} 11 root 155 ki31 0K 192K CPU2 2 830:03 45.07% idle{idle: cpu2} 11 root 155 ki31 0K 192K RUN 0 636:34 44.97% idle{idle: cpu0} 11 root 155 ki31 0K 192K RUN 3 827:47 44.38% idle{idle: cpu3} 11 root 155 ki31 0K 192K RUN 1 832:21 43.36% idle{idle: cpu1} 11 root 155 ki31 0K 192K RUN 5 618:48 42.58% idle{idle: cpu5} 11 root 155 ki31 0K 192K RUN 6 739:43 38.57% idle{idle: cpu6} 11 root 155 ki31 0K 192K CPU7 7 748:04 38.38% idle{idle: cpu7} 11 root 155 ki31 0K 192K CPU4 4 627:12 37.79% idle{idle: cpu4} 1460 root 33 0 60012K 12816K sbwait 9 154:34 17.77% perl5.14.4 1463 root 52 -15 76420K 29160K nanslp 8 87:18 12.99% perl5.14.4 12 root -92 - 0K 976K WAIT 9 313:02 5.66% intr{irq278: ix1:que } 12 root -92 - 0K 976K WAIT 7 308:44 4.98% intr{irq276: ix1:que } 12 root -92 - 0K 976K WAIT 8 319:11 4.69% intr{irq277: ix1:que } 12 root -92 - 0K 976K WAIT 10 310:01 4.59% intr{irq279: ix1:que } 12 root -92 - 0K 976K WAIT 4 256:07 4.30% intr{irq272: ix0:que } 12 root -92 - 0K 976K WAIT 11 313:43 4.20% intr{irq280: ix1:que } 12 root -92 - 0K 976K CPU6 6 313:15 4.05% intr{irq275: ix1:que } 12 root -92 - 0K 976K WAIT 11 310:23 3.96% intr{irq282: ix1:que } 12 root -92 - 0K 976K WAIT 5 256:53 3.96% intr{irq273: ix0:que } 12 root -92 - 0K 976K WAIT 10 316:09 3.86% intr{irq281: ix1:que } sysctl net.isr net.isr.numthreads: 12 net.isr.maxprot: 16 net.isr.defaultqlimit: 4096 net.isr.maxqlimit: 10240 net.isr.bindthreads: 1 net.isr.maxthreads: 12 net.isr.direct: 0 net.isr.direct_force: 0 net.isr.dispatch: deferred .. и при direct и ff=1 top -SHPI last pid: 45070; load averages: 5.09, 6.06, 6.58 up 0+22:06:47 01:16:10 216 processes: 17 running, 141 sleeping, 58 waiting CPU 0: 2.4% user, 0.0% nice, 20.0% system, 22.0% interrupt, 55.7% idle CPU 1: 2.0% user, 0.0% nice, 1.2% system, 25.1% interrupt, 71.8% idle CPU 2: 2.4% user, 0.0% nice, 0.8% system, 25.1% interrupt, 71.8% idle CPU 3: 3.1% user, 0.0% nice, 3.9% system, 19.2% interrupt, 73.7% idle CPU 4: 2.4% user, 0.0% nice, 0.4% system, 43.5% interrupt, 53.7% idle CPU 5: 1.2% user, 0.0% nice, 0.8% system, 45.1% interrupt, 52.9% idle CPU 6: 2.0% user, 0.0% nice, 2.0% system, 26.7% interrupt, 69.4% idle CPU 7: 2.4% user, 0.0% nice, 0.0% system, 31.4% interrupt, 66.3% idle CPU 8: 1.6% user, 0.0% nice, 1.6% system, 19.6% interrupt, 77.3% idle CPU 9: 2.4% user, 0.0% nice, 2.4% system, 21.6% interrupt, 73.7% idle CPU 10: 1.2% user, 0.0% nice, 1.2% system, 54.5% interrupt, 43.1% idle CPU 11: 0.8% user, 0.0% nice, 0.8% system, 51.8% interrupt, 46.7% idle Mem: 62M Active, 23M Inact, 1009M Wired, 1079M Buf, 10G Free Swap: 1024M Total, 1024M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 155 ki31 0K 192K RUN 3 830:11 80.96% idle{idle: cpu3} 11 root 155 ki31 0K 192K CPU1 1 834:42 78.76% idle{idle: cpu1} 11 root 155 ki31 0K 192K RUN 0 638:27 77.78% idle{idle: cpu0} 11 root 155 ki31 0K 192K CPU9 9 944:37 77.29% idle{idle: cpu9} 11 root 155 ki31 0K 192K RUN 2 832:19 74.07% idle{idle: cpu2} 11 root 155 ki31 0K 192K CPU8 8 939:17 71.00% idle{idle: cpu8} 11 root 155 ki31 0K 192K CPU7 7 750:02 70.36% idle{idle: cpu7} 11 root 155 ki31 0K 192K CPU6 6 741:43 68.36% idle{idle: cpu6} 11 root 155 ki31 0K 192K CPU5 5 620:49 56.69% idle{idle: cpu5} 11 root 155 ki31 0K 192K RUN 4 629:07 55.86% idle{idle: cpu4} 11 root 155 ki31 0K 192K RUN 11 688:10 48.29% idle{idle: cpu11} 11 root 155 ki31 0K 192K RUN 10 686:39 45.90% idle{idle: cpu10} 12 root -92 - 0K 976K WAIT 10 316:40 29.20% intr{irq281: ix1:que } 12 root -92 - 0K 976K WAIT 10 310:32 28.96% intr{irq279: ix1:que } 12 root -92 - 0K 976K WAIT 11 310:56 28.76% intr{irq282: ix1:que } 12 root -92 - 0K 976K WAIT 8 319:43 28.66% intr{irq277: ix1:que } 12 root -92 - 0K 976K CPU6 6 313:45 28.56% intr{irq275: ix1:que } 12 root -92 - 0K 976K WAIT 7 309:15 26.46% intr{irq276: ix1:que } 12 root -92 - 0K 976K WAIT 11 314:11 25.20% intr{irq280: ix1:que } 12 root -92 - 0K 976K WAIT 4 256:35 24.46% intr{irq272: ix0:que } 12 root -92 - 0K 976K WAIT 9 313:32 24.17% intr{irq278: ix1:que } 12 root -92 - 0K 976K WAIT 0 248:02 23.88% intr{irq266: ix0:que } 12 root -92 - 0K 976K CPU4 4 249:03 22.85% intr{irq270: ix0:que } 12 root -92 - 0K 976K WAIT 1 250:32 22.17% intr{irq267: ix0:que } 12 root -92 - 0K 976K WAIT 2 249:04 21.19% intr{irq268: ix0:que } 12 root -92 - 0K 976K WAIT 5 252:39 21.09% intr{irq271: ix0:que } 12 root -92 - 0K 976K WAIT 3 253:40 21.00% intr{irq269: ix0:que } 12 root -92 - 0K 976K CPU5 5 257:20 20.36% intr{irq273: ix0:que } 1460 root 29 0 60012K 12816K CPU5 5 155:11 11.18% perl5.14.4 1463 root 20 -15 76420K 29160K nanslp 8 87:39 7.28% perl5.14.4 12 root -60 - 0K 976K WAIT 5 43:57 2.88% intr{swi4: clock} sysctl net.isr net.isr.numthreads: 12 net.isr.maxprot: 16 net.isr.defaultqlimit: 4096 net.isr.maxqlimit: 10240 net.isr.bindthreads: 1 net.isr.maxthreads: 12 net.isr.direct: 1 net.isr.direct_force: 1 net.isr.dispatch: direct pps примерно 800К. Час пик уже прошел =( Прерывания от сетевух привязаны так: Шесть первых прерываний первой сетевухи на ядра 0-5, 7е и 8е - на ядра 4,5 Шесть первых прерываний второй сетевухи на ядра 6-11, 7е и 8е - на ядра 10,11. Разницу в нагрузке на сервер не особо заметно. Более того, не понимаю, почему в первом случае указано net.isr.numthreads: 12, но реально в топе видно только 8 работающих. Соответственно, загружены только первые 8 ядер. В чем подвох ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 27 октября, 2013 · Жалоба У вас там перл в топе, это какая-то магия сетевая? Или так просто диском шуршит? :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 27 октября, 2013 · Жалоба Это тест на внимательность =) п.с. скрипт в фоне, рулит правилами в фаерволе. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 27 октября, 2013 (изменено) · Жалоба Ну т.е. вас не смущает что скрипт в фоне имеет два процесса с нехилой нагрузкой? :) Просто был у меня в практике случай, когда довелось повстречать самописные грабли. Там машинка тоже страдала под трафиком, в основном под действием самописной хренотени типа "сниффер реальнага времени". Отключение этой байды просто преображало шлюз :) Я просто не очень в курсе, может если дергать каждые 10 наносекунд ipfw, все вообще умрет в локе. У вас там не так? Изменено 27 октября, 2013 пользователем DVM-Avgoor Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 28 октября, 2013 · Жалоба Скорее всего нужно обновляться и если не поможет писать в список рассылки, потому что последние 4 ядра не догружаются. Возможно что то с алгоритмом балансировки нетиср когда число процов не степень двойки. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...