how can we reach to CPU max MHz?

Issues related to hardware problems
Post Reply
jizh
Posts: 11
Joined: 2018/12/26 06:27:45

how can we reach to CPU max MHz?

Post by jizh » 2019/05/28 06:40:24

My CPU is
Model name: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
Stepping: 1
CPU MHz: 1200.860
CPU max MHz: 3000.0000
CPU min MHz: 1200.0000


And cpupower info as below
# cpupower frequency-info
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: Cannot determine or is not supported.
hardware limits: 1.20 GHz - 3.00 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 1.20 GHz and 3.00 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency: 1.20 GHz (asserted by call to hardware)
boost state support:
Supported: yes
Active: yes


But curious why cpu MHz always reach to 2.299 as max , never reach to 3.00GHz , even if I do stress like "stress --cpu 32 --timeout 600", My kernel is 3.10.0-862.14.4.el7.x86_64
watch -n.1 'cat /proc/cpuinfo | grep -i mhz'

Thanks

prabhakarpujeri
Posts: 4
Joined: 2019/05/21 15:01:05
Location: India

Re: how can we reach to CPU max MHz?

Post by prabhakarpujeri » 2019/05/28 07:17:05

you can do two things here

1. set power governor to performance

cpupower frequency-set -g performance


2. enable CPU turbo by setting sysfs value

echo 0 > /sys/devices/system/cpu/intel_pstate/no_turbo

User avatar
TrevorH
Forum Moderator
Posts: 25806
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: how can we reach to CPU max MHz?

Post by TrevorH » 2019/05/28 08:50:00

Your model of cpu is a 2.1GHz processor and the 3GHz speed is only reachable via turbo. Turbo only works on a limited number of cores - usually one at a time can reach the top turbo speed and the more cores you try to run at max turbo speed, the lower that speed will get. Since you tried to run all 32 cores at full speed, the max you managed to reach was 2.3GHz on a 2.1GHz processor.

If you want to see it hit 3GHz then you have to run your benchmark on one core at a time. To do that you also probably need to pin the task to one particular core or it'll get scheduled on more than one and won't necessarily reach top turbo speed.

Also, yum update = you are about 8 months out of date.
CentOS 5 died in March 2017 - migrate NOW!
Full time Geek, part time moderator. Use the FAQ Luke

jizh
Posts: 11
Joined: 2018/12/26 06:27:45

Re: how can we reach to CPU max MHz?

Post by jizh » 2019/05/29 03:10:20

Thanks @TrevorH

I saw it can reach to 3G when I stress only one or a few cores.

But seems we have to enable Turbo in BIOS, can't be able to echo directly. is it correct?

# echo 0 > /sys/devices/system/cpu/intel_pstate/no_turbo
-bash: echo: write error: Operation not permitted

User avatar
TrevorH
Forum Moderator
Posts: 25806
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: how can we reach to CPU max MHz?

Post by TrevorH » 2019/05/29 08:28:32

Yes, ignore that answer as it's of no use to you. You need turbo enabled to reach turbo speeds. Without it the processor will only be able to run at its rated 2.1GHz.
CentOS 5 died in March 2017 - migrate NOW!
Full time Geek, part time moderator. Use the FAQ Luke

jizh
Posts: 11
Joined: 2018/12/26 06:27:45

Re: how can we reach to CPU max MHz?

Post by jizh » 2019/05/31 03:10:37

Thank you TrevorH

chemal
Posts: 514
Joined: 2013/12/08 19:44:49

Re: how can we reach to CPU max MHz?

Post by chemal » 2019/05/31 14:36:17

The exact list of turbo frequencies is

3,000 MHz (1 core),
3,000 MHz (2 cores),
2,800 MHz (3 cores),
2,700 MHz (4 cores),
2,600 MHz (5 cores),
2,500 MHz (6 cores),
2,400 MHz (7 cores),
2,300 MHz (8 cores).

https://en.wikichip.org/wiki/intel/xeon_e5/e5-2620_v4

ron7000
Posts: 69
Joined: 2019/01/15 20:00:28

Re: how can we reach to CPU max MHz?

Post by ron7000 » 2019/06/03 13:43:52

fwiw, on my home pc an asrock something (< $80 ) having an intel i7-something; in that BIOS/EFI there is a specific setting to allow run at max turbo frequency on all cores. Now that is only a single 4 core cpu, I would suspect your E5-2620 v4 being a xeon will not do something like that, although whatever server you are using check it's BIOS thoroughly for all cpu related settings.

all the crazy stuff under /sys/devices/system/ where does one go to find related info on what all is under there?

I have a server running SLES 11.4, under /sys/devices/system/cpu/ there is cpu0/ and cpu1/ to cpu127 because the server has 4 e5-4667v3 cpu's. Under any cpu#/ there is cache/ and cpufreq/ and cpuidle/ and a few more. Under cpufreq/ there is all files such as bios_limit, cpuinfo_cur_freq, cpuinfo_max_freq, scaling_governor, and a few more.

In SLES 11.4, I have no "no_turbo" and no folder named "intel_pstate".
Regarding stuff like this, is it more of a linux kernel thing or a linux vendor thing as to what will exist and be named what under /sys/ ?
Where can I go to get info on stuff like this (regarding Centos/RHEL 7.6) ?

Post Reply