From: Forest Bond <forest@alittletooquiet.net>
To: linux-acpi@vger.kernel.org
Subject: Re: acpi-cpufreq; Intel Johnstown (Atom N270)
Date: Thu, 13 Aug 2009 14:29:08 -0400 [thread overview]
Message-ID: <20090813182908.GC9385@alittletooquiet.net> (raw)
In-Reply-To: <20090813172556.GB9385@alittletooquiet.net>
[-- Attachment #1: Type: text/plain, Size: 6097 bytes --]
Hi,
On Thu, Aug 13, 2009 at 01:25:57PM -0400, Forest Bond wrote:
> I'm using an Intel Johnstown board with an Atom N270 processor. Performance
> seems to improve dramatically with acpi-cpufreq loaded. This caught me by
> surprise. I had assumed that without loading acpi-cpufreq the CPU would be
> running at its maximum speed all the time.
I ran some tests to get some numbers. My findings indicate that before
acpi-cpufreq is loaded the CPU is running at 800MHz even though /proc/cpuinfo
indicates 1.6GHz.
My test just runs `yes | head -n10000000' and times the execution. Three reps
are done for each set of conditions. Here's a break down of the results:
======================= ============
Conditions Average Time
----------------------- ------------
acpi-cpufreq not loaded 2.641s
acpi-cpufreq loaded 1.349s
performance governor
acpi-cpufreq loaded 2.640s
userspace governor
scaling_max_freq 800000
======================= ============
Actual results follow.
Here's my test script:
#!/bin/bash
set -o xtrace
for rep in 1 2 3; do
grep '^cpu MHz' /proc/cpuinfo
uptime
time yes | head -n10000000 >/dev/null
done
Results without acpi-cpufreq:
root@platform:~# ./test.sh
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 1596.060
cpu MHz : 1596.060
+ uptime
18:08:37 up 6 min, 1 user, load average: 0.06, 0.66, 0.43
+ yes
+ head -n10000000
real 0m2.647s
user 0m2.844s
sys 0m0.420s
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 1596.060
cpu MHz : 1596.060
+ uptime
18:08:40 up 6 min, 1 user, load average: 0.13, 0.66, 0.43
+ yes
+ head -n10000000
real 0m2.655s
user 0m2.748s
sys 0m0.528s
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 1596.060
cpu MHz : 1596.060
+ uptime
18:08:43 up 6 min, 1 user, load average: 0.13, 0.66, 0.43
+ yes
+ head -n10000000
real 0m2.622s
user 0m2.872s
sys 0m0.428s
Then with acpi-cpufreq and the default performance governor:
root@platform:~# modprobe acpi-cpufreq
root@platform:~# ./test.sh
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 1600.000
cpu MHz : 1600.000
+ uptime
18:09:11 up 6 min, 1 user, load average: 0.13, 0.61, 0.42
+ yes
+ head -n10000000
real 0m1.354s
user 0m1.392s
sys 0m0.240s
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 1600.000
cpu MHz : 1600.000
+ uptime
18:09:12 up 6 min, 1 user, load average: 0.13, 0.61, 0.42
+ yes
+ head -n10000000
real 0m1.339s
user 0m1.440s
sys 0m0.284s
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 1600.000
cpu MHz : 1600.000
+ uptime
18:09:14 up 6 min, 1 user, load average: 0.13, 0.61, 0.42
+ yes
+ head -n10000000
real 0m1.354s
user 0m1.404s
sys 0m0.264s
root@platform:~# grep '' /sys/devices/system/cpu/cpu0/cpufreq/*
/sys/devices/system/cpu/cpu0/cpufreq/affected_cpus:0 1
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq:1600000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq:1600000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq:800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies:1600000 1333000 1067000 800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors:performance
/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq:1600000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver:acpi-cpufreq
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:performance
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq:1600000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq:800000
Then with the userspace governor and the frequency set to 800MHz:
root@platform:~# modprobe cpufreq_userspace
root@platform:~# echo 800000 >/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
root@platform:~# grep '' /sys/devices/system/cpu/cpu0/cpufreq/*
/sys/devices/system/cpu/cpu0/cpufreq/affected_cpus:0 1
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq:800000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq:1600000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq:800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies:1600000 1333000 1067000 800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors:userspace performance
/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq:800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver:acpi-cpufreq
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:performance
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq:800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq:800000
root@platform:~# echo 800000 >/sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
root@platform:~# ./test.sh
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 800.000
cpu MHz : 800.000
+ uptime
18:12:32 up 9 min, 1 user, load average: 0.00, 0.32, 0.34
+ yes
+ head -n10000000
real 0m2.627s
user 0m2.808s
sys 0m0.496s
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 800.000
cpu MHz : 800.000
+ uptime
18:12:35 up 10 min, 1 user, load average: 0.00, 0.32, 0.34
+ yes
+ head -n10000000
real 0m2.643s
user 0m2.732s
sys 0m0.544s
+ for rep in 1 2 3
+ grep '^cpu MHz' /proc/cpuinfo
cpu MHz : 800.000
cpu MHz : 800.000
+ uptime
18:12:37 up 10 min, 1 user, load average: 0.16, 0.34, 0.34
+ yes
+ head -n10000000
real 0m2.651s
user 0m2.848s
sys 0m0.424s
Thoughts?
-Forest
--
Forest Bond
http://www.alittletooquiet.net
http://www.pytagsfs.org
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2009-08-13 18:29 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-13 17:25 acpi-cpufreq; Intel Johnstown (Atom N270) Forest Bond
2009-08-13 18:29 ` Forest Bond [this message]
2009-08-13 19:07 ` Dave Jones
2009-08-13 19:09 ` Forest Bond
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090813182908.GC9385@alittletooquiet.net \
--to=forest@alittletooquiet.net \
--cc=linux-acpi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.