rsst Posted October 27, 2009 Posted October 27, 2009 Есть сабжевый наборчик. Сетевуха обычная гигабитная интеловская, q6600 и cenos 5.4 (ядро штатное, из репозитория). Хочется распределить обработку прерываний от сетевухи на все 4 ядра, ибо в данный момент одно ядро подгружено этим делом, остальные курят. Возможно ли это без дополнительных финансовых вливаний (покупки сетевухи на чипе 82576)? Или придется ставить 4 сетевки и решать этот вопрос таким способом? Раньше, когда стояла какая-то древняя суся и свежее ядро (ручками собранное) в ней, то такая фича работала, правда проц был АМД и собственно платформа немного другая :) Вставить ник Quote
Max P Posted October 27, 2009 Posted October 27, 2009 для начала заглянуть в /proc/interrupts и посмотреть чего и как там для eth Вставить ник Quote
rsst Posted October 27, 2009 Author Posted October 27, 2009 для начала заглянуть в /proc/interrupts и посмотреть чего и как там для eth там как раз видно, что прерывания обрабатываются одним ядром. какие бы я маски не тулил... кстати, забыл сказать, там xen, если это имеет значение... Вставить ник Quote
voron Posted October 27, 2009 Posted October 27, 2009 (edited) На линуксе, как я понимаю, распределять прерывания интеловые сетевые умеют начиная с 82575 и старше - нужен работающий msi-x (lspci -v) и tx/rx-очереди. На фрибсд яндекс-драйверам em msi-x для распределения нагрузки не нужен, достаточно просто tx/rx-очередей(82571, 82572) Edited October 27, 2009 by voron Вставить ник Quote
Max P Posted October 28, 2009 Posted October 28, 2009 в линуксе даже MSI не нужен, если например две сетевухи - то их и без msi можно раскидать Вставить ник Quote
rsst Posted October 28, 2009 Author Posted October 28, 2009 (edited) в линуксе даже MSI не нужен, если например две сетевухи - то их и без msi можно раскидать я тогда не понимаю, как у меня до этого на свежем ядре и другой платформе прерывания распределялись на оба (AMD Athlonx2 4200+ был) ядра? Опять же, хотелось бы таки распределить прерывания в существующей конфигурации. или это принципиально невозможно? Edited October 28, 2009 by rsst Вставить ник Quote
voron Posted October 28, 2009 Posted October 28, 2009 (edited) Опять же, хотелось бы таки распределить прерывания в существующей конфигурации. или это принципиально невозможно?<br /> речь о распределении прерываний от нескольких устройств между ядрами? Разовый запуск irqbalance, при необходимости прибивание руками через /proc/irq/xx/smp_affinity Если речь о распределении нагрузки с одной сетевой карты intel на несколько ядер, то чип 82575+ и работающий msi-x + тот же разовый запуск irqbalance. Edited October 28, 2009 by voron Вставить ник Quote
rsst Posted October 28, 2009 Author Posted October 28, 2009 Если речь о распределении нагрузки с одной сетевой карты intel на несколько ядер, то чип 82575+ и работающий msi-x + тот же разовый запуск irqbalance.работающий msi-x - должна быть поддержка со стороны железа материнской платы? Вставить ник 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.