2

I'm running with Ubuntu 14.04 on a Power8 server.

Is there a way to tell how fast the processors are running?

How do I enable the tools that come with powerpc-utils and cpufreq ?

added....

ppc64_cpu reports

# ppc64_cpu --frequency
min:    3.693 GHz (cpu 159)
max:    3.693 GHz (cpu 1)
avg:    3.693 GHz

the output of 'cpufreq-info' shows (example for one core):

analyzing CPU 159:
  driver: powernv-cpufreq
  CPUs which run at the same hardware frequency: 152 153 154 155 156 157 158 159
  CPUs which need to have their frequency coordinated by software: 152 153 154 155 156 157 158 159
  maximum transition latency: 4294.55 ms.
  hardware limits: 2.06 GHz - 3.69 GHz
  available frequency steps: 3.69 GHz <clipped>, 2.09 GHz, 2.06 GHz
  available cpufreq governors: conservative, userspace, powersave, ondemand, performance
  current policy: frequency should be within 2.06 GHz and 3.69 GHz.
              The governor "ondemand" may decide which speed to use
              within this range.
  current CPU frequency is 2.06 GHz (asserted by call to hardware).
  cpufreq stats: 3.69 GHz:0.66%, 3.66 GHz:0.00%, 3.62 GHz:0.00% <clipped> 2.09 GHz:0.00%, 2.06 GHz:99.34%  (5)

Here we can see the CPU is still clocked at ~2GHz and the governor is "ondemand" so nothing has changed. This Ubuntu installation is fully up to date

4 Answers 4

4

Yes, on Power /proc/cpuinfo shows the static "nominal" clock speed. The hardware also provides some frequency steppings above nominal that the cpufreq governors will include by default when running in OPAL firmware mode.

The reason 'ppc64_cpu --frequency' is showing different output is because that command reads some hardware counters and generates CPU activity to measure the frequency, therefore typically producing the max frequency of the system since the CPU utilization is increased while running the command.

The cpufreq method displays the actual frequency at that point in time, without bumping up the CPU utilization. So if the system is otherwise idle, cpufreq-info will show the lowest scaling frequency. This is the recommended method to check frequency of the host when running KVM guests since the PMU is shared between the host/guest(s) and the 'ppc64_cpu' method uses PMU hardware counters to measure frequency.

2

On the POWER servers, /proc/cpuinfo is the static definition of the clock speed. The processors can be clocked up with ppc64_cpu command.

I've heard there are some discrepancies between what ppc64_cpu --frequency is showing and what cpufreq is showing.

We'll have to ask for more details here.

0
1

ppc64_cpu --frequency will be inaccurate if one or more guests are running.

This means that using it to measure the frequency on a host with a guest running, or from within a guest, will produce numbers lower than the actual frequency.

The reason for this is that ppc64_cpu --frequency runs a process on all online CPU threads for a fixed amount of time, and counts the CPU cycles during that time period using perf. The perf subsystem itself uses the PMU hardware in the CPU. When a guest is scheduled to run, it is given ownership of the PMU, so no cycles will be counted from the host's perspective when the guest is executing. However the wall clock is still running. This means you're counting time without counting the cycles, and hence your lower than expected frequency result.

This is true at least as of powerpc-utils 1.2.22. That's not a guarantee that it will change in the future, but keep it in mind in case you're reading this answer many months or years down the track.

0

The two tools I use is HMC performance or PowerVP. PowerVP will actually give you all kinds of good information and is easy to use. The HMC now has a cool iPhone app that gives good basic performance data when your out of the office.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .