|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Frequency scaling not working
Regarding Frequency Scaling support in Xen, i think the problem is,
"Writes to few of the MSRs are being ignored in Xen, Eg: Write to the MSR MSR_IA32_THERM_CONTROL (alias, IA32_CLOCK_MODULATION, 19A) is being ignored in Xen, which is used to enable clock modulation driver for frequency scaling. But, the same MSR write works fine for linux.
Xen was able to access other MSRs like PERF_CTL (but i am yet to check if they could write in to it)
Also, I found that in /arch/i386/Kconfig, most of the modules are disabled for Xen including the MSR module, HyperThread support, SMT scheduler support, Machine Status Check support and Advanced Power Management support are diabled for Xen. I enabled few of those by changing the config and was able to have the MSR module working. Other modules when enabled gave compile time errors.
Regarding HyperThreading support,
Example: When i change frequency of a processor in linux, its corresponding
hyperthread's frequency is also automatically changed, wheareas in Xen, the frequency driver does not detect the hyperthread as a logical processor, it thinks of it as a separate physical processor (SMP).
To quote from the Intel Arch Manual,
"For Hyper-Threading Technology enabled processors, the IA32_CLOCK_MODULATION register is duplicated for each logical processor. In order for the On-demand clock modulation feature to work properly, the feature must be enabled on all the logical processors within a physical processor. If the programmed duty cycle is not identical for all the logical processors, the processor clock will modulate to the highest duty cycle programmed."
But this has got nothing to do with writes to the MSRs not getting realized, because i have booted my machine as a uniprocessor now..
Thanks for the response, Expecting to learn more about this,
regards, Sriram.G
Mark Williamson
<mark.williamson@xxxxxxxxxxxx> wrote: > I installed the latest version of xen (3.0.4_1). I used userspace governor > to change frequency of my xeon dual processor SMT. The driver used is > p4-clockmod. > > Changes to the frequency (through the /sys interface) is not getting > reflected to the hardware. From previous posts, i understand that rdmsr and > wrmsr has to be replaced with dom0_msr operations. Even after doing the > modifications, still the frequency is not getting changed and the domain0 > hypercall is returning a negative value when reads and writes are made to > the dom0_msr.
I'm not sure frequency scaling is supported by 3.0.4, although I expect it will be one day.
> Also, In xen SMT seems to have some problems. cpumask (affected cpus) does > not seem
to include the hyperthread.
I'm not entirely sure I understand the question here... The hyperthreads should be enumerated as separate processors and Just Work. What behaviour are you seeing?
Cheers, Mark
-- Dave: Just a question. What use is a unicyle with no seat? And no pedals! Mark: To answer a question with a question: What use is a skateboard? Dave: Skateboards have wheels. Mark: My wheel has a wheel!
_______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
SHOUT IT OUT! Tell everyone, from anywhere, that you're online on Yahoo! Messenger _______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|