[sisyphus] Xen, cpuidle, cpufreq

Alex Moskalenko mav на elserv.msk.su
Пт Янв 28 09:07:38 UTC 2011


Здравствуйте!

Если есть у нас пользователи текущей сизифной версии Xen, прошу помочь 
разобраться. Никак не могу понять, работают ли cpuidle/cpufreq в гипервизоре.

Итак, есть компьютер со следующим железом:
MB: ASUS P7Q57-M DO (кстати, на этой материнской плате проблемы с BIOS - битая 
DMAR-таблица, из-за чего использование VT-d невозможно);
CPU: Intel Core i3 550
[root на hwnode etc]# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 37
model name      : Intel(R) Core(TM) i3 CPU         550  @ 3.20GHz
stepping        : 5
cpu MHz         : 3200.240
cache size      : 4096 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
wp              : yes
flags           : fpu de tsc msr pae mce cx8 apic sep mtrr mca cmov pat 
clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good 
nonstop_tsc aperfmperf pni est ssse3 cx16 sse4_1 sse4_2 popcnt hypervisor 
lahf_lm arat
bogomips        : 6400.48
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

Установлены следующие версии пакетов:
[root на hwnode etc]# rpmquery xen
xen-4.0.1-alt2
[root на hwnode etc]# rpmquery xen-hypervisor
xen-hypervisor-4.0.1-alt2
[root на hwnode etc]# rpmquery -a | grep kernel-image.\*-xen
kernel-image-xen-dom0-2.6.32-alt26
Ядро kernel-image-xen-dom0-2.6.32-alt27 на этом железе не грузится - kernel 
panic при загрузке udev.

Пытаюсь действовать согласно http://wiki.xensource.com/xenwiki/xenpm, добавил 
опции cpufreq=xen cpuidle в загрузчик, но результат не достигнут:

[root на hwnode etc]# xenpm get-cpuidle-states
Max C-state: C7

cpu id               : 0
total C-states       : 0
idle time(ms)        : 0

cpu id               : 1
total C-states       : 0
idle time(ms)        : 0

cpu id               : 2
total C-states       : 0
idle time(ms)        : 0

cpu id               : 3
total C-states       : 0
idle time(ms)        : 0

[root на hwnode etc]# xenpm get-cpufreq-states
[root на hwnode etc]# xenpm get-cpufreq-para
[CPU0] failed to get cpufreq parameter
[CPU1] failed to get cpufreq parameter
[CPU2] failed to get cpufreq parameter
[CPU3] failed to get cpufreq parameter
[root на hwnode etc]# xenpm get-cpu-topology
CPU     core    socket
CPU0     0       0
CPU1     2       0
CPU2     0       0
CPU3     2       0
[root на hwnode etc]# xenpm start 10
Timeout set to 10 seconds
Start sampling, waiting for CTRL-C or SIGINT or SIGALARM signal ...
Elapsed time (ms): 10005

CPU0:   Residency(ms)           Avg Res(ms)
  Avg freq      3       KHz

CPU1:   Residency(ms)           Avg Res(ms)
  Avg freq      3       KHz

CPU2:   Residency(ms)           Avg Res(ms)
  Avg freq      3       KHz

CPU3:   Residency(ms)           Avg Res(ms)
  Avg freq      3       KHz

Хотелось бы понять, что я делаю не так и использовать хотя бы cpufreq. 

Заранее спасибо за ответ.

-- 
WBR, Alex Moskalenko


Подробная информация о списке рассылки Sisyphus