Перейти до

Распределение прерываний сетевой карты


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

Да, так. Это битмаска и для аффинити абсолютно не имеет смысла одинаковая маска и тем более ff, она дефолтовая ff, т.е. раскидывать на любое попавшееся ядро. Читайте официальную документацию:

https://www.kernel.org/doc/Documentation/IRQ-affinity.txt
https://www.kernel.org/doc/Documentation/networking/scaling.txt

Ссылка на сообщение
Поделиться на других сайтах
В 19.03.2018 в 16:22, Sashok1985 сказал:

Какой тогда смысл от такого разброса?

а в чем собссно проблема-то?

 

и какой смысл для очереди, в которую идут ВСЕ прерывания, указывать worker'ом только одно ядро???

 

 

В 19.03.2018 в 17:12, ttttt сказал:

для аффинити абсолютно не имеет смысла одинаковая маска

это ни разу не аффинити. это - RPS.

Ссылка на сообщение
Поделиться на других сайтах
28 минут назад, NiTr0 сказал:

это - RPS

Именно.

Это не аппаратная обработка прерывания, это уже уровень soft irq. Накладных расходов на использование чужих ядер минимум, конструкция вида "все ядра всем потокам" работает хорошо, выравнивая кривую аппаратную балансировку.

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

Не именно, распределение по ядрам традиционно называется аффинити, не важно чего конкретно, IRQ, обработки соединений, чего-то другого.
И называется так именно потому, что разделяя вещи связанные друг с другом по одним и тем же ядрам можно более эффективно использовать кэш каждого ядра, а не ждать пока данные прилетят откуда попало и не засорять ненужным кэшем не то ядро.

https://en.wikipedia.org/wiki/Affinity_mask
https://en.wikipedia.org/wiki/Processor_affinity

Відредаговано ttttt
Ссылка на сообщение
Поделиться на других сайтах
18 часов назад, ttttt сказал:

разделяя вещи связанные друг с другом по одним и тем же ядрам можно более эффективно использовать кэш каждого ядра, а не ждать пока данные прилетят откуда попало и не засорять ненужным кэшем не то ядро.

 

ну т.е. вы хотите сказать, что включение RPS в случае одной очереди прерываний (либо PPPoE пакетов, которые падают в одну и ту же очередь, делая аппаратные очереди бесполезными) снизит производительность? при том, что в реальном мире все ровно с точностью до наоборот?

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

Ок, не надо мне свои выдумки приписывать, потому уточнение, у рпс аффинити достигается выбором ядра по хэшу. Как вообще работает: при одной очереди прерывание выполняется на каком-то ядре и на этом ядре вычисляется хэш пакета и по хэшу выбирается из списка рпс ядро, куда отправлять дальнейшую обработку пакета. Соответственно оптимально в этом случае будет прибить прерывание к одному какому-то ядру, а остальные ядра указать в рпс. Если, конечно, не нума, иначе на все ядра будет медленно и нужно прибивать только к тем ядрам, куда можно быстро с ядра прерывания ходить. Когда очередей много, включен рсс и не нума, ядро где вычисляется хэш уже выбрано рсс хардом, таким же вычислением хэша и смысл отправлять пакет на дальнейшую обработку есть только самому себе. Если рсс не работает для доминирующего типа трафика, то прерывания будут попадать на одно ядро выбранное рсс, то очевидно что для оптимума стоит отключить рсс и мультиочереди и делать как и с одной очередью.

Ссылка на сообщение
Поделиться на других сайтах
В 21.03.2018 в 23:37, ttttt сказал:

Соответственно оптимально в этом случае будет прибить прерывание к одному какому-то ядру, а остальные ядра указать в рпс.

таки нет. получение пакета из сетевухи и вычисление хеша по заголовку - копеечная по ресурсам операция. потому выделять под это отдельное ядро смысла нет. тут вся суть - распределить ресурсоемкую маршрутизацию пакетов на более чем одно ядро.

да и не факт что cache miss будут меньше при отдельном ядре под прием пакетов.

 

В 21.03.2018 в 23:37, ttttt сказал:

Если рсс не работает для доминирующего типа трафика, то прерывания будут попадать на одно ядро выбранное рсс, то очевидно что для оптимума стоит отключить рсс и мультиочереди и делать как и с одной очередью.

зачем? чем мешают тут мультиочереди?

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

Всем спасибо за консультации. RPS не был лишним, тем более, что ранее, за непониманием его работы, я назначал маску по ядрам, по типу афинити. Маска на все ядра дала не плохой общий результат по ядрам. А вот проблема с полкой оказалась совсем не в этом. Один из абонентов супер заядлый торрентщик. В пики, порождал около 3-4 тыс. запросов в секунду на своём pppoe коннекте. А так как каждый pppoe коннект может обрабатываться только одной очередью, вот он и кладёт одно ядро в полку.

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

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

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

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

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

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

Вхід

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

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

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

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

    • Від hardware_all
      Продам CPU Intel XEON для серверів
       
      Intel XEON E5620 2.4GHz Quad Core 12M Socket 1366 LGA1366  (Step Code: SLBV4)    
      250грн 
      [4]
       
      Intel XEON E5520 Quad Core 2.26Ghz 8Mb CPU Processor H505J (Step Code: SLBFD)    
      250грн 
      [1]
       
      Intel XEON X5660 2.8GHz 6-Core 12MB Cache 6.4GT/s LGA1366  (Step Code: SLBV6)
      300грн      
      [6]
       
      Intel XEON  X5550 2.66 GHz Quad-Core 4C 8MB CPU Processor (Step Code: SLBF5) 
      250грн 
      [1]
      Intel XEON X5570 2.93 GHz Quad-Core 8MB 6.4 GT/s Socket LGA1366 (Step Code: SLBF3) 
      250грн 
      [1]
      Intel XEON 3.067GHz/0.512/533MHz Socket 604 (Step Code: SL6VP)    
      200грн 
      [2]

      Intel Pentium 4 (Northwood)   2.66GHz   533MHz   512KB    Socket 478 (Step Code: SL7PE)
      100грн     
      [12]
       
      Intel  XEON E5-2670  2.6 GHz  8 Core 20MB 8GT/s 115W (Step Code: SR0KX) 
      300грн  
      [4]
          
      Intel  XEON E5-2680 V2  2.80GHZ 10-CORE 25MB 115W (Step Code: SR1A6)
      400грн  
       [1]
    • Від hardware_all
      Продам  Ethernet Network Adapter  Intel X520-SR2 10GB 2ports  (E10G42BFSR)
      PCI Express x 8
      2 Ports x 10Gbps
      Product Code  E10G42BFSR
      Low Profile
      Без SFP's
       
      600грн
       




    • Від fikuronima
      Intel® Xeon® Processor X5450
      12M Cache, 3.00 GHz, 1333 MHz FSB
       
      Сокет -771.
      Готовый для установки в сокет 775. Переходник наклеен, пропилы сделаны. 
      Цена - 499 грн.
       


    • Від kolomiets
      Продано
       
      Сервер Intel (SR2600URBRP)
      Процесор: Intel Quad-Core Xeon E5520. 2.26 ГГц
      Привод: DVD RW samsung SN-S083C
      Оперативная память: DIMM DDR3 4 GB 1333 MHz x 3 = 12Gb
      Цена 1500$, торг
      тел. 063930###2 Константин
    • Від Гриша
      Продам SFP:
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 1G 1310 WDM 10km 6COM - 1шт
      SFP 1G 850nm 300m CISCO - 1шт
      SFP 1G 850nm 300m CISCO - 1шт
      SFP+ 10G 850nm 300m INTEL - 1шт
      SFP+ 10G 850nm 300m INTEL - 1шт
      SFP+ 10G 850nm 300m INTEL - 1шт
       
      Ціна, фото по посиланню: 
      https://docs.google.com/spreadsheets/d/1qgYDF0iqjyv2IG6wO5O0O4fYSllWILm1Pj4khu_WCBo/edit#gid=0
      Торг доречний
×
×
  • Створити нове...