James Dingwall
2012-Sep-30 16:13 UTC
[james-xen@dingwall.me.uk: [Xen-users] Xen 4.2.0 - CPU Frequency Scaling]
Hi, I didn''t get any response on xen-users for this issue but so I''m hoping -devel can help. I have had problems using cpu frequency scaling since the xen-acpi-processor code was added to the mainline kernel source. I wasn''t sure if the problem I was seeing was related to the old version (4.1.2) of Xen that I was using but now I''m on 4.2.0 and it still exists I thought I would check if I have a misconfiguration or if I have discovered a problem. My system is a dual AMD Opteron(tm) Processor 2423 HE on kernel 3.4.8. The xen command line is: console=vga,com2 com2=115200,8n1 dom0_mem=max:2048M dom0_max_vcpus=2 dom0_vcpus_pin The CPU scaling information reported by xenpm is below. The problem is that only cpuid 1 can be managed separately, all the others are bundled together and cannot be handled independently which used to be possible with the old xen kernel. If further information would be useful please let me know. Thanks, James # xenpm get-cpufreq-para cpu id : 0 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 1 affected_cpus : 1 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 2 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 3 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 4 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 5 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 6 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 7 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 8 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 9 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 10 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000] cpu id : 11 affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 cpuinfo frequency : max [2000000] min [800000] cur [800000] scaling_driver : scaling_avail_gov : userspace performance powersave ondemand current_governor : ondemand ondemand specific : sampling_rate : max [10000000] min [10000] cur [20000] up_threshold : 80 scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 scaling frequency : max [2000000] min [800000] cur [800000]
Konrad Rzeszutek Wilk
2012-Oct-01 16:33 UTC
Re: [james-xen@dingwall.me.uk: [Xen-users] Xen 4.2.0 - CPU Frequency Scaling]
On Sun, Sep 30, 2012 at 12:13 PM, James Dingwall <james@dingwall.me.uk> wrote:> Hi, > > I didn''t get any response on xen-users for this issue but so I''m hoping > -devel can help.Lets see if we can help you.> > I have had problems using cpu frequency scaling since the > xen-acpi-processor code was added to the mainline kernel source. I > wasn''t sure if the problem I was seeing was related to the old version > (4.1.2) of Xen that I was using but now I''m on 4.2.0 and it still exists > I thought I would check if I have a misconfiguration or if I have > discovered a problem. My system is a dual AMD Opteron(tm) Processor > 2423 HE on kernel 3.4.8. > > The xen command line is: > console=vga,com2 com2=115200,8n1 dom0_mem=max:2048M dom0_max_vcpus=2 > dom0_vcpus_pinDo you nee the dom0_max_vcpus=2? If they are not present does the problem persist?> > The CPU scaling information reported by xenpm is below. The problem > is that only cpuid 1 can be managed separately, all the others areWhat exactly are you trying to manage? As in what are you doing?> bundled together and cannot be handled independently which used to be > possible with the old xen kernel. If further information would be > useful please let me know. > > Thanks, > James > > # xenpm get-cpufreq-para > cpu id : 0 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 1 > affected_cpus : 1 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 2 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 3 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 4 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 5 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 6 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 7 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 8 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 9 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 10 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > cpu id : 11 > affected_cpus : 0 2 3 4 5 6 7 8 9 10 11 > cpuinfo frequency : max [2000000] min [800000] cur [800000] > scaling_driver : > scaling_avail_gov : userspace performance powersave ondemand > current_governor : ondemand > ondemand specific : > sampling_rate : max [10000000] min [10000] cur [20000] > up_threshold : 80 > scaling_avail_freq : 2000000 1500000 1300000 1000000 *800000 > scaling frequency : max [2000000] min [800000] cur [800000] > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel >
James Dingwall
2012-Oct-01 20:27 UTC
Re: [james-xen@dingwall.me.uk: [Xen-users] Xen 4.2.0 - CPU Frequency Scaling]
On 2012-10-01 17:33, Konrad Rzeszutek Wilk wrote:> On Sun, Sep 30, 2012 at 12:13 PM, James Dingwall > <james@dingwall.me.uk> wrote: >> Hi, >> >> I didn''t get any response on xen-users for this issue but so I''m >> hoping >> -devel can help. > > Lets see if we can help you.Thank you:)>> I have had problems using cpu frequency scaling since the >> xen-acpi-processor code was added to the mainline kernel source. I >> wasn''t sure if the problem I was seeing was related to the old >> version >> (4.1.2) of Xen that I was using but now I''m on 4.2.0 and it still >> exists >> I thought I would check if I have a misconfiguration or if I have >> discovered a problem. My system is a dual AMD Opteron(tm) Processor >> 2423 HE on kernel 3.4.8. >> >> The xen command line is: >> console=vga,com2 com2=115200,8n1 dom0_mem=max:2048M >> dom0_max_vcpus=2 >> dom0_vcpus_pin > > Do you nee the dom0_max_vcpus=2? If they are not present does the > problem persist? >> >> The CPU scaling information reported by xenpm is below. The problem >> is that only cpuid 1 can be managed separately, all the others are > > What exactly are you trying to manage? As in what are you doing?What I was trying to achieve was 2 vcpus assigned and pinned to dom0 with the remaining available for domUs. I wanted to set the scaling governor as performance for the dom0 vcpus and ondemand for domUs. It was an obvious test to change dom0_max_vcpus and I should have done it before. On removing the parameter so that all cpus were seen in dom0 I could control the power state of them all independently. Reinstating the parameter with value of n showed that cpu 1 - (n-1) could be controlled independently while cpus 0 and n-11 were grouped together.>> bundled together and cannot be handled independently which used to >> be >> possible with the old xen kernel. If further information would be >> useful please let me know.I did have a look at xen-acpi-processor.c but it is a bit beyond me and perhaps not even the right place to start. Thanks, James
Konrad Rzeszutek Wilk
2012-Oct-02 19:08 UTC
Re: [james-xen@dingwall.me.uk: [Xen-users] Xen 4.2.0 - CPU Frequency Scaling]
>> >> What exactly are you trying to manage? As in what are you doing? > > What I was trying to achieve was 2 vcpus assigned and pinned to dom0 with > the remaining available for domUs. I wanted to set the scaling governor as > performance for the dom0 vcpus and ondemand for domUs. > > It was an obvious test to change dom0_max_vcpus and I should have done it > before. On removing the parameter so that all cpus were seen in dom0 I could > control the power state of them all independently. Reinstating the > parameter with value of n showed that cpu 1 - (n-1) could be controlled > independently while cpus 0 and n-11 were grouped together.And this behavior existed with the old kernel? Or was this something you were trying to do now?
James Dingwall
2012-Oct-02 21:30 UTC
Re: [james-xen@dingwall.me.uk: [Xen-users] Xen 4.2.0 - CPU Frequency Scaling]
On Tue, Oct 02, 2012 at 03:08:39PM -0400, Konrad Rzeszutek Wilk wrote:> >> > >> What exactly are you trying to manage? As in what are you doing? > > > > What I was trying to achieve was 2 vcpus assigned and pinned to dom0 with > > the remaining available for domUs. I wanted to set the scaling governor as > > performance for the dom0 vcpus and ondemand for domUs. > > > > It was an obvious test to change dom0_max_vcpus and I should have done it > > before. On removing the parameter so that all cpus were seen in dom0 I could > > control the power state of them all independently. Reinstating the > > parameter with value of n showed that cpu 1 - (n-1) could be controlled > > independently while cpus 0 and n-11 were grouped together. > > And this behavior existed with the old kernel? Or was this something > you were trying to do now?I seem to recall that with the old xen-sources kernel that this wasn''t a problem as I had an init script which set the cpu frequency governors as I wanted them. However once mainline got dom0 pvops I jumped to that and made do without that particular feature. Once xen-acpi-processor was added then I noticed this behaviour. It is possible that during that time I added the dom0_max_vcpus parameter and so I''m not comparing exactly the same configuration. I''ll poke around to see if I can find an old xen kernel which I can test with. Thanks, JAmes