Показать страницуСсылки сюдаНаверх Эта страница только для чтения. Вы можете посмотреть её исходный текст, но не можете его изменить. Сообщите администратору, если считаете, что это неправильно. ====== Автоматическая балансировка прерываний для сетевых карт в Linux ====== Данный скрипт был найден в Интернет и я хочу с Вами им поделиться, так как он весьма полезен. <note tip>Скрипт "раскидывает" по очереди прерывания на все ядра системы.</note> <note tip>Выражаем благодарность автору данного скрипта</note> Создаем файл скрипта <code>/usr/local/sbin/intel.sh</code> <note tip>Не забываем дать ему права на запуск</note> Содержимое скрипта: <code>#!/bin/bash ncpus=`grep -ciw ^processor /proc/cpuinfo` test "$ncpus" -gt 1 || exit 1 n=0 for irq in `cat /proc/interrupts | grep eth | awk '{print $1}' | sed s/\://g` do f="/proc/irq/$irq/smp_affinity" test -r "$f" || continue cpu=$[$ncpus - ($n % $ncpus) - 1] if [ $cpu -ge 0 ] then mask=`printf %x $[2 ** $cpu]` echo "Assign SMP affinity: eth$n, irq $irq, cpu $cpu, mask 0x$mask" echo "$mask" > "$f" let n+=1 fi done</code> <note warning>Не забываем подключить скрипт в автозагрузку вашей ОС</note> Пример через /etc/rc.local такой строкой. <code>/usr/local/sbin/intel.sh > /dev/null</code> billing/howto/ether_irq_balance_linux.txt Последнее изменение: 9 лет назад — ld