Jump to content
Калькуляторы

FreeBSD + 10 Gbit ixgbe + dummynet

Что-то торможу... Почему не меняется количество очередей сетевой? Меняю в  loader.conf и перезагружаю.

 

 

Цитата

kern.geom.label.disk_ident.enable="0"
kern.geom.label.gptid.enable="0"
zfs_load="YES"
dummynet_load="YES"
ipfw_nat_load="YES"
coretemp_load="YES"
kern.ipc.nmbclusters=262144
net.inet.tcp.tcbhashsize=4096
hw.ixgbe.rxd="4096"
hw.ixgbe.txd="4096"

hw.ixgbe.num_queues="8"
#
net.isr.maxthreads="8"
net.isr.bindthreads="1"
net.link.ifqmaxlen="1024"
hw.ix.num_queues="8"


 

 

Цитата

ix0: <Intel(R) PRO/10GbE PCI-Express Network Driver> mem 0xa0000000-0xa01fffff,0xa0200000-0xa0203fff irq 16 at device 0.0 on pci1
ix0: using 2048 tx descriptors and 2048 rx descriptors
ix0: msix_init qsets capped at 16
ix0: pxm cpus: 6 queue msgs: 63 admincnt: 1
ix0: using 6 rx queues 6 tx queues
ix0: Using MSIX interrupts with 7 vectors
ix0: allocated for 6 queues
ix0: allocated for 6 rx queues


 

Share this post


Link to post
Share on other sites
12 hours ago, doubtpoint said:

Что-то торможу... Почему не меняется количество очередей сетевой? Меняю в  loader.conf и перезагружаю.

 

 


 

 


 

s/hw\.ixgbe/hw.ix/

?

Share this post


Link to post
Share on other sites
1 час назад, z18 сказал:

s/hw\.ixgbe/hw.ix/

?

Пробовал. Даже выше последная строчка hw.ix.num_queues="8"

Share this post


Link to post
Share on other sites

 FreeBSD 12.0-RELEASE-p3 GENERIC  amd64

i7-8700

intel X540T1

Share this post


Link to post
Share on other sites
20 minutes ago, doubtpoint said:

Пробовал. Даже выше последная строчка hw.ix.num_queues="8"

не заметил.

это уже iflib драйвер, смотрите в сторону такого:

 

# sysctl -d dev.igb.0.iflib.override_nrxqs

dev.igb.0.iflib.override_nrxqs: # of rxqs to use, 0 => use default #
# sysctl -d dev.igb.0.iflib.override_ntxqs
dev.igb.0.iflib.override_ntxqs: # of txqs to use, 0 => use default #

 

Share this post


Link to post
Share on other sites

Может потому что число ядер в процессоре 6 ? Вот по кол-ву ядер и распределилось по например по net.isr.bindthreads="1"

Performance

Share this post


Link to post
Share on other sites

Спасибо ответившим.

Число ядер с гипертредингом 12.

Решилось 

dev.ix.0.iflib.override_nrxqs=12
dev.ix.0.iflib.override_ntxqs=12

 

Share this post


Link to post
Share on other sites

Кажется повсюду рекомендации отключать HT. 

Что-то изменилось ?

Share this post


Link to post
Share on other sites

 

В 07.05.2019 в 20:56, doubtpoint сказал:

Спасибо ответившим.

Число ядер с гипертредингом 12.

Решилось 


dev.ix.0.iflib.override_nrxqs=12
dev.ix.0.iflib.override_ntxqs=12

 

А что показывает: top -aSIHP
нагрузка по ядрам распределилась?

Share this post


Link to post
Share on other sites
В 22.04.2019 в 22:13, jffulcrum сказал:

MSI-X попробуйте выключить (hw.pci.enable_msix=0)

И как это должно было помочь? Проверил, по моему вообще стало грузить только 1 ядро :)

В общем решил проблему просто:

Установил: /usr/ports/net/intel-ix-kmod

 

в loader.conf:

 

Цитата

if_ix_updated_load="YES"

И теперь 12 по распределению ведёт себя так же как 11 версия.

 

И да всё же 12 пока не советую ставить, падения в кору случаются, причём на пустом месте, баг репорт пестрит этими сообщениями.

Share this post


Link to post
Share on other sites
В 11.05.2019 в 09:24, polmax сказал:

И да всё же 12 пока не советую ставить, падения в кору случаются, причём на пустом месте, баг репорт пестрит этими сообщениями.

Собирайте ядро с дебагом и прикладывайте корки к PR.

Share this post


Link to post
Share on other sites

Всем доброго дня. Имеется машинка FreeBSD 10.4-RELEASE-p9 FreeBSD 10.4-RELEASE-p9 с Intel(R) Core(TM) i5-8600K CPU @ 3.60GHz на борту и 16gb памяти. С одной двухголовой 82599ES 10-Gigabit SFI/SFP+ Network Connection. Работает только ipfw dummynet. Загрузка уже критическая. Можно ли еще выжать из этой машины и какие крутилки посмотреть? Графики ниже:

 

Screenshot_1.thumb.png.2d37993ec8fd0412413a185aee8a35a3.png

Screenshot_2.thumb.png.6b5a17c1ac727d314cd0363a1390a3b3.png

Screenshot_3.thumb.png.62f80d820bc96d78108913b6fd022ef6.png

 

И мои текущие крутилки:

loader.conf

sysctl.conf

 

Share this post


Link to post
Share on other sites
6 минут назад, roma33rus сказал:

Имеется машинка FreeBSD 10.4-RELEASE-p9

поставьте 11.3. там сетевую часть прилично улучшили. вполне возможно, что получите ощутимый выигрыш.

Share this post


Link to post
Share on other sites
3 минуты назад, nixx сказал:

поставьте 11.3. там сетевую часть прилично улучшили. вполне возможно, что получите ощутимый выигрыш.

К сожалению именно на этой железке рисково очень. она одна в работе и подмены нет. Сейчас вторую заказали, буду раскидывать на две железки нагрузку. А почему 11.3, а не 12 сразу?

Share this post


Link to post
Share on other sites
Только что, roma33rus сказал:

А почему 11.3, а не 12 сразу?

ну вот выйдет 12.1 - можно будет и попробовать.

а чистый релиз 12.0 с минимальной нагрузкой у меня стабильно падал каждые 2 недели, пока патчей пачка не вышла. вам охота быть бета-тестером?

Share this post


Link to post
Share on other sites
2 минуты назад, nixx сказал:

ну вот выйдет 12.1 - можно будет и попробовать.

а чистый релиз 12.0 с минимальной нагрузкой у меня стабильно падал каждые 2 недели, пока патчей пачка не вышла. вам охота быть бета-тестером?

Нет конечно, не охота. Все-таки ситуация не изменилась. Прочел эту ветку. Я думаю, чт поставлю 11.3 на новую машину и заменю старую. Заодно и сравнить можно будет разницу. Новая железяка почти идентичная будет. за исключением проца.

Share this post


Link to post
Share on other sites
В 20.09.2019 в 12:34, roma33rus сказал:

Имеется машинка FreeBSD 10.4-RELEASE-p9 FreeBSD 10.4-RELEASE-p9

RIP!

 

В 20.09.2019 в 12:34, roma33rus сказал:

Работает только ipfw dummynet. Загрузка уже критическая. Можно ли еще выжать из этой машины и какие крутилки посмотреть?

top -aSCHIP

а графики - это к гадалке :)

 

В 20.09.2019 в 12:56, nixx сказал:

ну вот выйдет 12.1 - можно будет и попробовать.

Уже вышло практически.

 

В 20.09.2019 в 12:59, roma33rus сказал:

Я думаю, чт поставлю 11.3 на новую машину и заменю старую.

Одно старьё на другое.

Share this post


Link to post
Share on other sites
3 часа назад, Ivan_83 сказал:

RIP!

Соглашусь. Только у меня не реально обновиться сейчас.

3 часа назад, Ivan_83 сказал:

Одно старьё на другое.

Ага. Мне просто сейчас, пока оборудование покупается, выиграть немного в производительности. А потом уже на две железки раскинуть.

Share this post


Link to post
Share on other sites

Сейчас такая картина у меня получается:

 

Скрытый текст

            input            ix1           output
   packets  errs idrops      bytes    packets  errs      bytes colls
      465k     0     0       532M       295k     0       121M     0
      458k     0     0       523M       284k     0       120M     0
      481k     0     0       556M       298k     0       117M     0
      493k     0     0       577M       298k     0       111M     0
      483k     0     0       564M       289k     0       111M     0
      475k     0     0       550M       292k     0       115M     0
      503k     0     0       592M       297k     0       114M     0
      489k     0     0       571M       297k     0       114M     0
      498k     0     0       581M       297k     0       114M     0
      456k     0     0       520M       283k     0       118M     0
      456k     0     0       524M       286k     0       115M     0
      455k     0     0       524M       278k     0       116M     0
      463k     0     0       531M       284k     0       120M     0
      457k     0     0       526M       285k     0       113M     0
      465k     0     0       534M       291k     0       118M     0
      451k     0     0       516M       281k     0       117M     0
      460k     0     0       526M       285k     0       119M     0
      436k     0     0       490M       276k     0       118M     0
      446k     0     0       506M       279k     0       117M     0
      459k     0     0       523M       286k     0       120M     0
      440k     0     0       499M       275k     0       116M     0
            input            ix1           output
   packets  errs idrops      bytes    packets  errs      bytes colls
      445k     0     0       508M       278k     0       109M     0
      462k     0     0       532M       288k     0       112M     0
      479k     0     0       560M       295k     0       111M     0
      463k     0     0       539M       283k     0       107M     0
      456k     0     0       526M       286k     0       112M     0
      451k     0     0       515M       287k     0       119M     0
      433k     0     0       491M       276k     0       117M     0
      438k     0     0       496M       273k     0       114M     0
      460k     0     0       525M       282k     0       119M     0
      447k     0     0       509M       283k     0       118M     0
      469k     0     0       540M       287k     0       117M     0
      445k     0     0       508M       285k     0       120M     0
      457k     0     0       524M       282k     0       117M     0





last pid: 20434;  load averages:  9.01,  8.04,  8.09                                                                                           up 335+19:41:38 20:13:56
126 processes: 11 running, 82 sleeping, 33 waiting
CPU 0:  0.0% user,  0.0% nice, 14.0% system, 60.1% interrupt, 26.0% idle
CPU 1:  0.0% user,  0.0% nice,  3.9% system, 68.6% interrupt, 27.5% idle
CPU 2:  0.0% user,  0.0% nice,  5.0% system, 62.4% interrupt, 32.6% idle
CPU 3:  0.0% user,  0.0% nice,  6.2% system, 65.5% interrupt, 28.3% idle
CPU 4:  0.0% user,  0.0% nice,  4.3% system, 69.0% interrupt, 26.7% idle
CPU 5:  0.4% user,  0.0% nice,  4.7% system, 61.2% interrupt, 33.7% idle
Mem: 6640K Active, 2882M Inact, 1940M Wired, 13M Cache, 1630M Buf, 11G Free
Swap: 3881M Total, 31M Used, 3851M Free

  PID USERNAME     PRI NICE   SIZE    RES STATE   C   TIME     CPU COMMAND
   11 root         155 ki31     0K    96K RUN     3 5474.9  43.26% [idle{idle: cpu3}]
   11 root         155 ki31     0K    96K RUN     4 5465.4  42.58% [idle{idle: cpu4}]
   11 root         155 ki31     0K    96K RUN     2 5480.3  42.48% [idle{idle: cpu2}]
   11 root         155 ki31     0K    96K RUN     1 5404.8  42.19% [idle{idle: cpu1}]
   11 root         155 ki31     0K    96K RUN     0 4558.6  40.48% [idle{idle: cpu0}]
   11 root         155 ki31     0K    96K RUN     5 5484.6  38.77% [idle{idle: cpu5}]
   12 root         -92    -     0K   576K WAIT    0 1246.3  36.28% [intr{irq272: ix1:q0}]
   12 root         -92    -     0K   576K WAIT    1 1350.0  36.08% [intr{irq273: ix1:q1}]
   12 root         -92    -     0K   576K CPU3    3 1306.5  35.60% [intr{irq275: ix1:q3}]
   12 root         -92    -     0K   576K WAIT    5 1294.5  35.60% [intr{irq277: ix1:q5}]
   12 root         -92    -     0K   576K WAIT    4 1293.0  33.40% [intr{irq276: ix1:q4}]
   12 root         -92    -     0K   576K WAIT    2 1294.9  30.27% [intr{irq274: ix1:q2}]
   12 root         -92    -     0K   576K WAIT    2 1001.2  27.20% [intr{irq267: ix0:q2}]
   12 root         -92    -     0K   576K CPU4    4 1009.3  25.68% [intr{irq269: ix0:q4}]
   12 root         -92    -     0K   576K WAIT    0 952.6H  25.10% [intr{irq265: ix0:q0}]
   12 root         -92    -     0K   576K WAIT    5 1000.8  24.76% [intr{irq270: ix0:q5}]
   12 root         -92    -     0K   576K WAIT    1 1030.1  23.88% [intr{irq266: ix0:q1}]
   12 root         -92    -     0K   576K RUN     3 995.8H  23.78% [intr{irq268: ix0:q3}]
   12 root         -72    -     0K   576K WAIT    0  92.3H   0.29% [intr{swi1: netisr 0}]
91922 nobody        20    0 33144K  5400K kqread  2 405:43   0.10% nginx: worker process (nginx)

 

 

Share this post


Link to post
Share on other sites

Можешь попробовать:

net.isr.dispatch=deferred        # direct / hybrid / deffered // Interrupt handling via multiple CPU, but with context switch.

если что откатишь, это без ребута.

Хотя в 10х оно кажется немного иначе называлось.

Share this post


Link to post
Share on other sites
12 минут назад, Ivan_83 сказал:

Хотя в 10х оно кажется немного иначе называлось.

Нет, опция всегда так была (с 9.0). В потрохах называлось queued до 10, но в конфиге всегда бралось deferred

Share this post


Link to post
Share on other sites
11 часов назад, Ivan_83 сказал:

Можешь попробовать:

net.isr.dispatch=deferred        # direct / hybrid / deffered // Interrupt handling via multiple CPU, but with context switch.

если что откатишь, это без ребута.

Хотя в 10х оно кажется немного иначе называлось.

Да у меня так и стоит изначально (net.isr.dispatch: deferred). Давно давно, путем экспериментов это было лучшее значение в плане нагрузки на железку.

 

А если я допустим начну в ipfw использовать burst, это поможет немного моей ситуации? Сейчас у меня так pipe создаются:

05001: 1024.000 Mbit/s    0 ms burst 0
q136073 1000 KB 0 flows (1 buckets) sched 70537 weight 0 lmax 0 pri 0 droptail
 sched 70537 type FIFO flags 0x1 65536 buckets 40 active
    mask:  0x00 0x00000000/0x0000 -> 0xffffffff/0x0000

 

Edited by roma33rus

Share this post


Link to post
Share on other sites
1 час назад, roma33rus сказал:

Да у меня так и стоит изначально (net.isr.dispatch: deferred). Давно давно, путем экспериментов это было лучшее значение в плане нагрузки на железку.

У тебя в топе прерывания карточек, а netisr почти не видно, это говорит скорее о том, что включён direct.

Я не спец в ipfw, но чем меньше там правил или чем быстрее они пролетают - тем меньше нагрузка.

Share this post


Link to post
Share on other sites
59 минут назад, Ivan_83 сказал:

У тебя в топе прерывания карточек, а netisr почти не видно, это говорит скорее о том, что включён direct.

Я не спец в ipfw, но чем меньше там правил или чем быстрее они пролетают - тем меньше нагрузка.

image.png.013d48eb2e5c7ee02acf794b14694094.png

 

Вот данные реального времени. Есть ли смысл пробовать ставить его в hybrid?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now