LINUX.ORG.RU
ФорумAdmin

Xen cpu utilization

 , ,


0

3

Привет, лор!

Есть такая проблема. Имеет место быть dom0, базированный на ubuntu, ядро 3.11.0-13-generic.

Под ним запущен domU, прилагаю конфиг

kernel = "/boot/vmlinuz-2.6.39.rs64-loaded-xen-01"
ramdisk = "/boot/initrd.img-2.6.39.rs64-loaded-xen-01"
memory = 65536
cpu_weight = 60000
vcpus=24
name = "rs64"
vif = [ 'bridge=xenbr1', 'bridge=xenbr0' ]
disk =[
        'phy:/dev/sda1,/dev/xvda1,w',
        'phy:/dev/sda2,/dev/xvda2,w'
        ]
root = "/dev/xvda1 ro"
И все бы хорошо, но при запуске в domU, например, make -j24, LA в domU растет до 33-35, нагрузка на все 24 ядра 100%, если смотреть по htop в domU.

Тем не менее сборка ядра, выполняемая в качестве синтетического теста на таких мощщщах занимает 28 000 секунд.

Если собирать ядро на dom0, то там оно собирается за 180 секунд. Чувствуете разницу, да? Во время сборки на domU смотрим LA на dom0 ~ 2-3, загрузка CPU 2-3%. То есть по факту оно простаивает. Вопрос - ЧЯДНТ, что такое не везет и как с этим бороться.



Последнее исправление: teamfighter (всего исправлений: 2)

В прошлый раз вроде по xen мне пытался помочь труадмин)

Так что sudo cast true_admin, we need your help)

teamfighter
() автор топика

к какому лешему такой оверкоммит по ядрам? ясен хрен, оно будет тормозить

anonymous
()

Сколько у тебя реальных ядер? И какой тип виртуализации? PV?

Я слышал что при большом кол-ве виртуальных ядер и некоторых типах нагрузки может быть большой оверхед. Грубо говоря, «на синхронизацию между ядрами».

Некоторая инфа есть тут: http://wiki.xen.org/wiki/Tuning_Xen_for_Performance

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

если на хосте 24, то не оверкоммит, но всё равно у меня смутные сомнения о непригодности хена для такого количества ядер, тут даже один человек намедни удивлялся какому-то глюку на четырёх ядрах.

anonymous
()

Кстати, а почему cpu_weight = 60000?

Я ещё не совсем понимаю твой пост. Мне кажется, там кое-где dom0 и domU упомянуты неправильно. Перечитай, плиз.

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

Значить, так.
CPU на хосте стоит вот такой:
Intel(R) Xeon(R) CPU X7460, реальных ядер 6, на каждом по 4 логических, итого 24.
Тип виртуализации PV.
Пробовал заводить на меньшем числе ядер, пинить vcpus на реальные ядра - картина та же

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

cpu_weight = 60000?

В качестве эксперимента вставлял, сейчас без него работает. Картина та же.

Мне кажется, там кое-где dom0 и domU упомянуты неправильно

Пофиксил, спс

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

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

teamfighter
() автор топика
Ответ на: комментарий от teamfighter

что именно заводили, разузнай, а то эти парни из редхета мистических плюшек насуют, что потом полсотни доменов на двух ядрах не тормозят

anonymous
()
Ответ на: комментарий от teamfighter

Давай будем последовательными в диагностике. Сделай vcpu=6 и померяй производительность. По результатам будем думать дальше.

Что касается «конструкции» то я не понимаю какой смысл в липовых ядрах. Есть подозрение что вы решаете очень странную проблему.

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

Давай будем последовательными в диагностике. Сделай vcpu=6 и померяй производительность. По результатам будем думать дальше.

Производительность ~ в 4 раза ниже, уже мерял) Я с этой проблемой уже неделю воюю.

Что касается «конструкции» то я не понимаю какой смысл в липовых ядрах. Есть подозрение что вы решаете очень странную проблему.

Что верно, то верно, но деться от этого некуда)

teamfighter
() автор топика
Ответ на: комментарий от anonymous

Вывод cat /proc/cpuinfo на хосте

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 29
model name	: Intel(R) Xeon(R) CPU           X7460  @ 2.66GHz
stepping	: 1
microcode	: 0x29
cpu MHz		: 2659.926
cache size	: 16384 KB
fpu		: yes
fpu_exception	: yes
cpuid level	: 11
wp		: yes
flags		: fpu de tsc msr pae mce cx8 apic sep mca cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl pni monitor est ssse3 cx16 sse4_1 hypervisor lahf_lm dtherm
bogomips	: 5319.85
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management:

...{cutted}......{cutted}......{cutted}......{cutted}...

processor	: 23
vendor_id	: GenuineIntel
cpu family	: 6
model		: 29
model name	: Intel(R) Xeon(R) CPU           X7460  @ 2.66GHz
stepping	: 1
microcode	: 0x29
cpu MHz		: 2659.926
cache size	: 16384 KB
fpu		: yes
fpu_exception	: yes
cpuid level	: 11
wp		: yes
flags		: fpu de tsc msr pae mce cx8 apic sep mca cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl pni monitor est ssse3 cx16 sse4_1 hypervisor lahf_lm dtherm
bogomips	: 5319.85
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management:

teamfighter
() автор топика
Ответ на: комментарий от anonymous

Пробовались ядра ветки 2.6, начиная от 2.6.28 заканчивая 2.6.39. На всех их наблюдается та же самая картина. Я подозреваю что что-то упускаю при сборке. По сути, ядро собирается ванильное, с добавление поддержки xen-guest.

teamfighter
() автор топика
Ответ на: комментарий от teamfighter

ядра ванильные поди? а если взять, например, от xenserver ядро или от шапки, или от ещё какого-то широко известного всем кроме меня добра для виртуализации? а ещё и разные версии хена если?

anonymous
()
Ответ на: комментарий от teamfighter

А поставь-ка какой-нить типовой дистр для domU. Т.е. не самодельное ядро, а уже готовое.

Просто я возился как-то с многоядерными тачками и ксен. Я сам не проверял, но прогеры сказали что на 12ядер всё отлично расползлось, причём внутрях венда была. Т.е. они меряли оверхед, там какие-то проценты оказались на их вычеслительных задачах. Что за хост был не помню. Скорее всего, либо дебиан, либо rhel.

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

И да, у тебя, походу, четыре физических проца в разных NUMA-доменах. Возможно, это тоже добавляет специфики.

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

Завтра попробуем.
На сегодня я думаю разбегаемся, надо домой ехать)

teamfighter
() автор топика
Ответ на: комментарий от divelgrom

на машине используется не NUMA архитектура.

Там четыре проца, как это не используется? Или ты имеешь в виду что там четыре отдельных домена?

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

Там NUMA потому что там несколько контроллеров памяти. Для каждого проца свой.

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

реальных ядер 6

столько и есть, остальное - потенциально выполняемые треды, если другие не получат CPU time. ну а давать ВМ больше процессоров чем хост реально может дать это ой при любой системе виртуализации, так как эти виртуальные процессоры фактически выстраиваются в очередь и мешают друг другу.

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

У него четырёхголовая тачка, 4x6.

хупертридинга на 4 потока в интеле ещё не придумали.

пардон, не дочитал. тогда в принципе должно пахать, и думаю все упирается в оверхеды. я бы попробовал для начала скинуть до 20 процессоров и посмотреть что получается

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

У меня смутное подозрение что он что-то с шедулингом и cpu affinity намудрил. Это объясняет почему у него проц на хосте не загружается.

Я только не знаю куда копать. Я приверженец kvm и xen вижу только когда просят помочь :)

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

Я приверженец kvm и xen вижу только когда просят помочь

same here

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