Перейти до

FreeBSD 11.4 прерывания по ядрам процессора


Рекомендованные сообщения

Добрый день. В наличии PPPoE сервера, MPD5 + pf, FreeBSD 9.1. Оптическая сетевая 10G, многопоточная. Развернул для этих же целей FreeBSD 11.4 и столкнулся с проблемой разброса прерываний по ядрам проца.

На 9-ке можно без проблем руками раскидывать прерывания командой "cpuset -l ядро -x № прерывания". Получается картина

 

procstat -at | grep irq
 

intr             irq264: ix0:que    0    8 wait    -         
intr             irq265: ix0:que    3    8 wait    -         
intr             irq266: ix0:que    2    8 wait    -         
intr             irq267: ix0:que    3    8 wait    -         
intr             irq268: ix0:link   0    8 wait    -         
intr             irq269: ix1:que    2    8 wait    -         
intr             irq270: ix1:que    3    8 wait    -         
intr             irq271: ix1:que    1    8 wait    -         
intr             irq272: ix1:que    1    8 wait    -         
intr             irq273: ix1:link   3    8 wait    -         
 

На 11-ке раскидать руками ОС не дает, это делается автоматом и большая часть нагрузки уходит на 1-й проц, на остальных нагрузки получается раза в 2-3 меньше. 

 

procstat -at | grep irq

intr                irq259: ix0:q0        0    8 run     -         
intr                irq260: ix0:q1       -1    8 wait    -         
intr                irq261: ix0:q2       -1    8 wait    -         
intr                irq262: ix0:q3       -1    8 wait    -         
intr                irq263: ix0:q4       -1    8 wait    -         
intr                irq264: ix0:q5       -1    8 wait    -         
intr                irq265: ix0:link     -1    8 wait    -         
intr                irq266: ix1:q0       -1    8 wait    -         
intr                irq267: ix1:q1       -1    8 wait    -         
intr                irq268: ix1:q2       -1    8 wait    -         
intr                irq269: ix1:q3       -1    8 wait    -         
intr                irq270: ix1:q4       -1    8 wait    -         
intr                irq271: ix1:q5       -1    8 wait    -     

 

vmstat -i

 

irq259: ix0:q0                  26389637      10083
irq260: ix0:q1                   1780629        680
irq261: ix0:q2                   1864978        713
irq262: ix0:q3                   5651474       2159
irq263: ix0:q4                   2437979        931
irq264: ix0:q5                   2519809        963
irq265: ix0:link                       1          0
irq266: ix1:q0                  16177017       6181
irq267: ix1:q1                   2918329       1115
irq268: ix1:q2                   2561989        979
irq269: ix1:q3                   3170112       1211
irq270: ix1:q4                   3907708       1493
irq271: ix1:q5                   5857000       2238

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

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від a_n_h
      Всем доброго дня и мирного неба!
        После многочисленных экспериментов выяснил, что на последних версиях freebsd  максимум удавалось прокачать до 14 ГБт суммарно трафика со 100% загрузкой процессора. На том-же железе но с установленной freebsd 11.2 прокачивается до 20-ти ГБт суммарно тестового трафика с загрузкой процессора около 50%. 
        Подскажите, что можно убрать или наоборот добавить в систему с freebsd 13,3 для получения аналогичного результата...
    • Від mac
      Здається, після оновлення PHP 7.4 до PHP 8.2 feesharvester припинив працювати:
       
      /usr/local/bin/curl "http://127.0.0.1/billing/?module=remoteapi&key={SERIAL}&action=feesharvester" <br /> <b>Fatal error</b>: Uncaught TypeError: Unsupported operand types: string - string in {UBPATH}/billing/api/libs/api.fundsflow.php:570 Stack trace: #0 {UBPATH}/billing/modules/remoteapi/feesharvester.php(22): FundsFlow-&gt;harvestFees('2024-01') ...  
      Невеличке розслідування врешті з'ясувало, що це через наявність пробілу у деяких логінах абонентів. Як так сталося? Тому що інколи був неуважно додан трейлінг пробіл до номеру будинка і цей пробіл потрапив до логіну абоненту. Логін абоненту неможливо змінити ніяким чином штатними засобами. Я не розглядаю створення нового абонента для усунення помілки.

      Був обран такий шлях вирішення проблеми. Заміну функції php explode() знайшов у мережі. Мабуть це станеться в нагоді:

       
      diff api.fundsflow.php.bak api.fundsflow.php.new 559c559 < $eachfee = explode(' ', $eachline); --- > $eachfee = preg_split("~(?<!\\\\)(?:\\\\{2})*'[^'\\\\]*(?:\\\\.[^'\\\\]*)*'(*SKIP)(*F)|\s+~s" , $eachline);  
    • Від FantoM_EscapE
      Хочу перенести свій білінг NODENY із фізичного сервера на віртуальний. Шукаю адміна який зможе допомогти у цьому питанні, так як нашого адміна банально призвали до війська. Вся схема на даний момент робоча, маю доступи до всього. Потрібно проінсталити на новішу версію FREEBSD, бо на моїй 10 річній вже не працюють нові SSL сертифікати. Кого зацікавила дана пропозиція - прошу у приватні повідомлення. обсудимо ціну і строки. або пишіть на будь-який месенджер 0677792091
    • Від rusol
      Добрый вечер.
       
      Есть от провайдера блок реальных адресов, к примеру 100.1.1.192/26
       
      Раньше сеть была в одном влане и записи в /etc/rc.conf были такие:

       
      ifconfig_ix0="inet 192.168.0.1 netmask 255.255.255.0" # Шлюз для пользователей с локальным IP ifconfig_ix0_alias0="inet 100.1.1.193 netmask 255.255.255.192" # Шлюз для пользователей с реальными IP  
      После чего стала задача часть пользователей переводить во вланы тоже с разделением на локальные IP и реальные, первый влан создал где-то пару лет назад и все работает:
       
      ifconfig_vlan1="vlan 1 vlandev ix0 192.168.1.1 netmask 255.255.255.0" # Шлюз для пользователей с локальным IP во Влане 1 ifconfig_vlan1_alias0="inet 100.1.1.248 netmask 255.255.255.248" # Шлюз для пользователей с реальными IP  во Влане 1  
      И вот стоит задача создать еще один влан, делаю по аналогии с вланом 1, только маску смещаю назад:
       
      ifconfig_vlan2="vlan 2 vlandev ix0 192.168.1.1 netmask 255.255.255.0" # Шлюз для пользователей с локальным IP во Влане 2 ifconfig_vlan2_alias0="inet 100.1.1.246 netmask 255.255.255.254" # Шлюз для пользователей с реальными IP во Влане 2  
      Когда я внес это в /etc/rc.conf и прописал команду:
       
      ifconfig vlan2 create  
      Все заработало.
       
      Но как только перезагрузился сервер, перестали работать реальные IP без вланов, в первом влане и во втором. Не пойму что не так делаю, возможно я с маской подсети что-то недопонимаю...
    • Від rusol
      Добрый вечер.
       
      Есть от провайдера блок реальных адресов, к примеру 100.1.1.192/26
       
      Раньше сеть была в одном влане и записи в /etc/rc.conf были такие:

       
      ifconfig_ix0="inet 192.168.0.1 netmask 255.255.255.0" # Шлюз для пользователей с локальным IP ifconfig_ix0_alias0="inet 100.1.1.193 netmask 255.255.255.192" # Шлюз для пользователей с реальными IP  
      После чего стала задача часть пользователей переводить во вланы тоже с разделением на локальные IP и реальные, первый влан создал где-то пару лет назад и все работает:
       
      ifconfig_vlan1="vlan 1 vlandev ix0 192.168.1.1 netmask 255.255.255.0" # Шлюз для пользователей с локальным IP во Влане 1 ifconfig_vlan1_alias0="inet 100.1.1.248 netmask 255.255.255.248" # Шлюз для пользователей с реальными IP  во Влане 1  
      И вот стоит задача создать еще один влан, делаю по аналогии с вланом 1, только маску смещаю назад:
       
      ifconfig_vlan1="vlan 1 vlandev ix0 192.168.1.1 netmask 255.255.255.0" # Шлюз для пользователей с локальным IP во Влане 2 ifconfig_vlan1_alias0="inet 100.1.1.246 netmask 255.255.255.254" # Шлюз для пользователей с реальными IP во Влане 2  
      Когда я вношу это в /etc/rc.conf и прописал команду:
       
      ifconfig vlan2 create  
      Все заработало.
       
      Но как только перезагрузился сервер, перестали работать реальные IP без вланов, в первом влане и во втором. Не пойму что не так делаю, возможно я с маской подсети что-то недопонимаю...
×
×
  • Створити нове...