LINUX.ORG.RU
решено ФорумAdmin

не работает taskset

 ,


1

1

Выставил вручную cpu affinity для двух виртуальных машин. Первую повесил на нулевой проц, вторую на седьмой. taskset утверждает что всё выставлено нормально. Даже top в last used cpu показывает выставленные значения. Однако, судя по тому же top, загружены процы 2 и 3. В чём косяк, как лечить?

ubuntu server 12.04 amd64 со всеми апдейтами.

Делал так же как и в http://www.linux-kvm.com/content/tip-running-your-vm-specific-cpus.

Tasks: 116 total,   1 running, 115 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :100.0%us,  0.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :100.0%us,  0.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu4  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  16367576k total, 11649340k used,  4718236k free,   170952k buffers
Swap:   998396k total,      468k used,   997928k free,  7862372k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  P COMMAND                                                                                       
 6181 kvm       20   0 9831m 1.5g 6116 S  100  9.5   2:58.66 7 kvm                                                                                            
 6196 kvm       20   0 10.0g 1.5g 6120 S  100  9.5   2:58.59 0 kvm                                                                                            
   53 root      25   5     0    0    0 S    0  0.0  52:46.74 0 ksmd                  
★★★★★

Проверил на рахате 6.3 - работает. Делал так:

taskset -pc 2 9626
, где 2 это процессор, 9626 это процесс.

Еще можно в htop менять - навести на процесс и нажать 'a'. Потом выбрать процессоры. Тоже работает.

fjoe ()

В чём косяк, как лечить?

в выборе дистра :)

dyasny ★★★★★ ()

Так, это не ты ли недавно жаловался на то что в убунтосервере до сих пор какая-то либа 4х летней давности?

X10Dead ★★★★★ ()

На всякий случай покажи

for pid in  6181 6196; do  taskset -p $pid; taskset -c -p $pid; done

Не воспринимай как наезд, вечер пятницы - тяжёлый день :)

router ★★★★★ ()
Ответ на: комментарий от X10Dead

не ты ли недавно жаловался на то что в убунтосервере до сих пор какая-то либа 4х летней давности?

Я. Поэтому часть софта стоит через checkinstall.

true_admin ★★★★★ ()
Ответ на: комментарий от router
$ for pid in `pgrep -x kvm`; do  taskset -p $pid; taskset -c -p $pid; done
pid 7782's current affinity mask: 1
pid 7782's current affinity list: 0
pid 7829's current affinity mask: 80
pid 7829's current affinity list: 7

(pid-ы поменялись из-за перезапусков)

Не воспринимай как наезд

да какие наезды, все ошибаются.

true_admin ★★★★★ ()
Ответ на: комментарий от fjoe

Так, я понял. По дефолту taskset выставляет affinity только для основного треда. В общем, надо маны читать до конца.

Спасибо большое, разгадку помог получить htop который по-дефолту треды отображает отдельно.

true_admin ★★★★★ ()
Ответ на: комментарий от router

О, зашибись, taskset все числа как hex воспринимает, даже без префикса 0x. Убиват.

true_admin ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.