On Thu, 2016-04-07 at 14:12 +0530, Ritesh Raj Sarraf wrote:
> > Which I guess explains why "50%" is "800MHz" -- 3GHz is the max turbo freq,
> > 800MHz is presumably the only step close to 1800/2=900 MHz.
> > 
> > >From what I've read, preventing the CPU from bumping up to higher
> > frequencies can actually *increase* power consumption because it forces the
> > CPU to stay awake longer before returning to an idle low power / sleep
> > state.
> > 
> > Needless to say I'm fixing this locally in my config files, but I would
> > suggest that the current defaults should be revisited as producing poor
> > behavior, and possibly being misguided.
> 
> I am open to re-visit, provided there is substantial input. I have the same
> make
> hardware but I don't see the problem reflect as severe on my box.

I checked more on this, and this is what I found.

With half speed:

rrs@learner:/sys/bus/cpu/devices/cpu0$ openssl speed
Doing md4 for 3s on 16 size blocks: 4295553 md4's in 2.97s
Doing md4 for 3s on 64 size blocks: 3317236 md4's in 2.99s
Doing md4 for 3s on 256 size blocks: 1939860 md4's in 2.99s
Doing md4 for 3s on 1024 size blocks: 727015 md4's in 2.99s
Doing md4 for 3s on 8192 size blocks: 105341 md4's in 3.00s
Doing md5 for 3s on 16 size blocks: 3101894 md5's in 2.98s
Doing md5 for 3s on 64 size blocks: 2235797 md5's in 3.00s
Doing md5 for 3s on 256 size blocks: 1228928 md5's in 2.99s
Doing md5 for 3s on 1024 size blocks: 449882 md5's in 2.99s
Doing md5 for 3s on 8192 size blocks: 64689 md5's in 3.00s
Doing hmac(md5) for 3s on 16 size blocks: 2611156 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 64 size blocks: 1999051 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 256 size blocks: 1180636 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 1024 size blocks: 438307 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 8192 size blocks: 64715 hmac(md5)'s in 2.99s
Doing sha1 for 3s on 16 size blocks: 3731871 sha1's in 2.99s
Doing sha1 for 3s on 64 size blocks: 2239718 sha1's in 2.98s
Doing sha1 for 3s on 256 size blocks: 1480029 sha1's in 2.99s
Doing sha1 for 3s on 1024 size blocks: 600523 sha1's in 2.99s
Doing sha1 for 3s on 8192 size blocks: 88193 sha1's in 2.99s
Doing sha256 for 3s on 16 size blocks: 3599814 sha256's in 3.00s
Doing sha256 for 3s on 64 size blocks: 2025003 sha256's in 2.99s
Doing sha256 for 3s on 256 size blocks: 970274 sha256's in 2.99s
Doing sha256 for 3s on 1024 size blocks: 303136 sha256's in 3.00s
Doing sha256 for 3s on 8192 size blocks: 41629 sha256's in 3.00s
Doing sha512 for 3s on 16 size blocks: 2468796 sha512's in 3.00s
Doing sha512 for 3s on 64 size blocks: 2481543 sha512's in 3.00s
Doing sha512 for 3s on 256 size blocks: 1102975 sha512's in 3.00s
Doing sha512 for 3s on 1024 size blocks: 412524 sha512's in 3.00s
Doing sha512 for 3s on 8192 size blocks: 57108 sha512's in 2.99s
Doing whirlpool for 3s on 16 size blocks: 1525114 whirlpool's in 3.00s
Doing whirlpool for 3s on 64 size blocks: 859220 whirlpool's in 3.00s
Doing whirlpool for 3s on 256 size blocks: 353719 whirlpool's in 3.00s
Doing whirlpool for 3s on 1024 size blocks: 108342 whirlpool's in 3.00s
Doing whirlpool for 3s on 8192 size blocks: 14277 whirlpool's in 3.00s
Doing rmd160 for 3s on 16 size blocks: 2107100 rmd160's in 2.99s
Doing rmd160 for 3s on 64 size blocks: ^C
2016-04-07 / 15:10:37 ♒♒♒  ☹  => 130  


And then with proposed full speed:

rrs@learner:/sys/bus/cpu/devices/cpu0$ openssl speed
Doing md4 for 3s on 16 size blocks: 9392038 md4's in 2.98s
Doing md4 for 3s on 64 size blocks: 6244753 md4's in 3.00s
Doing md4 for 3s on 256 size blocks: 4142927 md4's in 3.00s
Doing md4 for 3s on 1024 size blocks: 1547502 md4's in 3.00s
Doing md4 for 3s on 8192 size blocks: 225112 md4's in 3.00s
Doing md5 for 3s on 16 size blocks: 6650710 md5's in 3.00s
Doing md5 for 3s on 64 size blocks: 4813750 md5's in 2.99s
Doing md5 for 3s on 256 size blocks: 2661605 md5's in 3.00s
Doing md5 for 3s on 1024 size blocks: 955932 md5's in 3.00s
Doing md5 for 3s on 8192 size blocks: 136823 md5's in 3.00s
Doing hmac(md5) for 3s on 16 size blocks: 5687526 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 64 size blocks: 4307060 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 256 size blocks: 2485180 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 1024 size blocks: 930683 hmac(md5)'s in 3.00s
Doing hmac(md5) for 3s on 8192 size blocks: 136320 hmac(md5)'s in 3.00s
Doing sha1 for 3s on 16 size blocks: 7909628 sha1's in 3.00s
Doing sha1 for 3s on 64 size blocks: 5696551 sha1's in 3.00s
Doing sha1 for 3s on 256 size blocks: 3369608 sha1's in 3.00s
Doing sha1 for 3s on 1024 size blocks: 1270917 sha1's in 2.99s
Doing sha1 for 3s on 8192 size blocks: 186625 sha1's in 3.00s
Doing sha256 for 3s on 16 size blocks: 7356203 sha256's in 2.99s
Doing sha256 for 3s on 64 size blocks: 4366052 sha256's in 2.99s
Doing sha256 for 3s on 256 size blocks: 2071203 sha256's in 2.99s
Doing sha256 for 3s on 1024 size blocks: 654961 sha256's in 3.00s
Doing sha256 for 3s on 8192 size blocks: 87773 sha256's in 2.99s
Doing sha512 for 3s on 16 size blocks: 5190576 sha512's in 3.00s
Doing sha512 for 3s on 64 size blocks: 5039911 sha512's in 3.00s
Doing sha512 for 3s on 256 size blocks: 2309995 sha512's in 2.99s
Doing sha512 for 3s on 1024 size blocks: 856088 sha512's in 2.99s
Doing sha512 for 3s on 8192 size blocks: 125533 sha512's in 2.99s
Doing whirlpool for 3s on 16 size blocks: 3397037 whirlpool's in 2.99s
Doing whirlpool for 3s on 64 size blocks: 1831035 whirlpool's in 2.99s
Doing whirlpool for 3s on 256 size blocks: 765533 whirlpool's in 3.00s
Doing whirlpool for 3s on 1024 size blocks: 228553 whirlpool's in 3.00s
Doing whirlpool for 3s on 8192 size blocks: 30228 whirlpool's in 2.99s
Doing rmd160 for 3s on 16 size blocks: 4539834 rmd160's in 2.99s
Doing rmd160 for 3s on 64 size blocks: 2733040 rmd160's in 2.99s
Doing rmd160 for 3s on 256 size blocks: 1235880 rmd160's in 3.00s
Doing rmd160 for 3s on 1024 size blocks: 387812 rmd160's in 3.00s
Doing rmd160 for 3s on 8192 size blocks: ^C
2016-04-07 / 15:13:30 ♒♒♒  ☹  => 130  


There's hardly any difference in the results. Even top reports the process to
run on a single core at 100% cap, in both the cases.


On the other hand, that tool cpufreq-info, seems to be giving odd results. This
is on a machine which is idle. The reading was taken after interrupting the
openssl command and giving it some time to settle down.

The power saving setting was set to full speed,
i.e. BATT_INTEL_PSTATE_PERF_MAX_PCT=100

rrs@learner:/media/SSHD/rrs-home/devel/Laptop-Mode-Tools/laptop-mode-tools (lmt-
upstream)$ sudo cpufreq-info 
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
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: 0.97 ms.
  hardware limits: 800 MHz - 3.10 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 3.10 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 1.90 GHz (asserted by call to hardware).
analyzing CPU 1:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 1
  CPUs which need to have their frequency coordinated by software: 1
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.10 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 3.10 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 1.90 GHz (asserted by call to hardware).
analyzing CPU 2:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 2
  CPUs which need to have their frequency coordinated by software: 2
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.10 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 3.10 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 1.90 GHz (asserted by call to hardware).
analyzing CPU 3:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 3
  CPUs which need to have their frequency coordinated by software: 3
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.10 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 3.10 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 1.86 GHz (asserted by call to hardware).
2016-04-07 / 15:15:27 ♒♒♒  ☺  


-- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to