You are not logged in.

#1 2013-06-20 11:51:14

zezadas
Member
Registered: 2013-04-11
Posts: 35

i7 frequency scaling

So i have an i7 3610, and i'm recompiling my kernel, i give some attention to power efficiency

So this is the app, that is use to read the frequency. (i7z) :  https://code.google.com/p/i7z/

it says about acpi_cpufreq:

"Linux doesn't need cpufreq util. Cpu managing software is so last to last year. Seems that CPU throttles down to lower freq if there is no load, even when there is no cpufreqd or acpi-cpufreq module is installed!"

so i was thinking in disabling acpi_cpufreq on kernel, but then it disables sub-modules (p-state)
i have read here about ondemand governor not fiting, and to use p-state: http://www.phoronix.com/scan.php?page=n … px=MTM3NDQ

so in resume, acpi_cpufreq is not good for i7, maybe alternatively use DFS, but if a disable acpi_cpufreq i will disable p-state.


How you usually configure your kernel for cpu energetic efficiency and scaling ?

Offline

#2 2013-06-20 18:01:00

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,600
Website

Re: i7 frequency scaling

Use pstates driver.  You will need a patch if you're using ivy or haswell.  On mobile now so can't look up your chip.

EDIT: Seems like it's an ivybridge so you'll need to wait for linux 3.10 to go final, run a 3.10rc, or patch 3.9.x with this:

diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
index cc3a8e6..2300269 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
@@ -600,6 +600,7 @@ static void intel_pstate_timer_func(unsigned long __data)
 static const struct x86_cpu_id intel_pstate_cpu_ids[] = {
 	ICPU(0x2a, default_policy),
 	ICPU(0x2d, default_policy),
+	ICPU(0x3a, default_policy),
 	{}
 };
 MODULE_DEVICE_TABLE(x86cpu, intel_pstate_cpu_ids);
--- linux-3.9/drivers/cpufreq/Kconfig.x86	2013-04-28 20:36:01.000000000 -0400
+++ linux-3.9.mod/drivers/cpufreq/Kconfig.x86	2013-05-18 07:09:23.667729647 -0400
@@ -6,12 +6,12 @@
        bool "Intel P state control"
        depends on X86
        help
-          This driver provides a P state for Intel core processors.
+          This driver provides a P state for Intel Core processors.
 	  The driver implements an internal governor and will become
-          the scaling driver and governor for Sandy bridge processors.
+          the scaling driver and governor for Sandy/Ivy Bridge and Haswell processors.
 
 	  When this driver is enabled it will become the perferred
-          scaling driver for Sandy bridge processors.
+          scaling driver for Sandy/Ivy Bridge and Haswell processors.
 
 	  If in doubt, say N.

Last edited by graysky (2013-06-20 19:04:30)


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#3 2013-06-20 23:10:01

zezadas
Member
Registered: 2013-04-11
Posts: 35

Re: i7 frequency scaling

and about acpi cpu frequency scaling and fynamic frequency scaling?

Offline

#4 2013-06-21 01:10:48

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,600
Website

Re: i7 frequency scaling

When you're using pstates, others are automatically diabled [apci-cpufreq].


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#5 2013-06-21 03:29:45

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: i7 frequency scaling

I have an i5 3210M with a self compiled kernel that includes the patch to enable the intel_pstate driver for my hardware, and it works wonderfully.

Though I didn't include all the changes to the help page that graysky included in the patch above.  I just added the single "ICPU(0x3a..." line.

Offline

Board footer

Powered by FluxBB