192.168.1.1" | awk '{print $1,$2,$3,$4,$5,$8}' >> out done Но в top`е вижу: 20875 rz 20 0 9580 4116 440 R 69 0.2 0:04.16 bzcat 20876 rz 20 0 8292 1012 780 R 31 0.0 0:01.90 grep Что оба процесса загружают только одно ядро." /> 192.168.1.1" | awk '{print $1,$2,$3,$4,$5,$8}' >> out done Но в top`е вижу: 20875 rz 20 0 9580 4116 440 R 69 0.2 0:04.16 bzcat 20876 rz 20 0 8292 1012 780 R 31 0.0 0:01.90 grep Что оба процесса загружают только одно ядро." /> Равномерное распределние задач - Ubuntu.ru

Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Равномерное распределние задач  (Прочитано 666 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн rz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Равномерное распределние задач
« : 26 Декабря 2008, 09:33:56 »
День добрый!

Есть двухядерный AMD и Ubuntu 8.10 с ядром 2.6.27-11-generic
Запускаю маленький скрипт:

for i in *.bz2
do bzcat $i | grep "> 192.168.1.1" | awk '{print $1,$2,$3,$4,$5,$8}' >> out
done

Но в top`е вижу:
20875 rz        20   0  9580 4116  440 R   69  0.2   0:04.16 bzcat
20876 rz        20   0  8292 1012  780 R   31  0.0   0:01.90 grep

Что оба процесса загружают только одно ядро.

pidstat это подтверждает:
14:51:25        20865    0,01    0,00    0,01     1  bzcat
14:51:25        20866    0,01    0,00    0,01     1  grep

Причём тот же 7zip при работе нагружает оба ядра, и два подобных скрипта тоже.

Если почитать записки Дебианщика http://mydebianblog.blogspot.com/2008/11/linux-rt-linux-tweaking.html, то можно во время выполнения разбросать задачи на два ядра.
Но можно ли что-нибудь подкрутить, чтобы это распределение выполнялось самостоятельно?
Хм, прикольно...

Оффлайн Kwah

  • Старожил
  • *
  • Сообщений: 1442
  • Ubuntu 17.10
    • Просмотр профиля
Re: Равномерное распределние задач
« Ответ #1 : 26 Декабря 2008, 13:36:35 »
Оно и выполняется самостоятельно.

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
Re: Равномерное распределние задач
« Ответ #2 : 26 Декабря 2008, 13:42:09 »
У меня по умолчанию affinity mask процессов 3, т.е. процесс может выполняться на любом из ядер.
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

Оффлайн rz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: Равномерное распределние задач
« Ответ #3 : 30 Декабря 2008, 05:41:11 »
Ага, спасибо за наводку.

Пока сделал:

do taskset 1 bzcat $i | taskset 2 grep ...

Разница:
С taskset:
real    36m38.798s
user    40m46.613s
sys     11m56.409s
Без него:
real    68m54.698s
user    41m3.738s
sys     27m33.983s

Хм, прикольно...

 

Страница сгенерирована за 0.041 секунд. Запросов: 23.