Talk:Problem with high pitch noises

From ThinkWiki
Revision as of 20:47, 4 January 2006 by Nephiel (Talk | contribs) (Discussion of "Limit ACPI CPU power states")
Jump to: navigation, search

Discussion of "Limit ACPI CPU power states"

  • Stefan Baums: I raised this issue on the linux-kernel mailing list, and from there it was forwarded to the acpi-devel mailing list. See the discussion here and here. Results: The idle=halt kernel parameter disables ACPI C-state switching entirely (i.e., locks the processor in C1). It is preferable to pass to the ACPI processor component the option max_cstate=2, which only disables the problematic states C3 and C4. The only way to accomplish this that worked for me was to compile the ACPI processor component permanently into the kernel (CONFIG_ACPI_PROCESSOR=y) and then enable it by adding the parameter processor.max_cstate=2 to the boot command line (and of course removing idle=halt). Now the computer switches back and forth between C1 and C2, but avoids the noise-inducing C3 and C4, and frequency scaling works regardless. [Update: I now use the default Ubuntu kernel, with processor as a module, and disabled C3 and C4 by modifying /etc/init.d/acpid as explained on the article page.] (X41)
  • Simon Eggert: The processor.max_cstate=3 option worked for me on my T43p thanks.
  • Adding options processor max_cstate=2 in /etc/modprobe.conf (or /etc/modprobe.conf.local on my SuSE 9.3 installation) prevents the CPU permanently from entering into C3 and higher states. (X40, R52)
  • Thinker: On one T43, this worked even with processor.max_cstate=3. That is, C3 was silent and only C4 produced whining (at both HZ=100 and HZ=250).
  • Thinker: These options affect power consumption when the CPU is idle. Here are the figures on one ThinkPad T43:
    • processor.max_cstate=4: 15160mW (default, noisy)
    • processor.max_cstate=3: 15770mW (660mW higher, silent)
    • processor.max_cstate=2: 16100mW (2940mW higher, silent)
  • gsmenden: On a debian system, no modprobe.conf, can use modutils to add max_cstate line. On my t43p the noise only occcurs when on battery power after suspend / resume cycle. It is definitely is still present when hard disk is spun down. Nevertheless there may be multiple sources of this (quite annoying) sound.
  • gsmenden: Update - if you don't want to use modutils, can manually load it on bootup by adding "processor max_cstate=3" in /etc/modules on a debian system. Noise still present upon resume though on my t43p though  :(
  • Nephiel: My Z60m also had the "screeching when on battery" problem with Ubuntu 5.10. Editing /etc/init.d/acpid as described worked. It needed C2: C3 was quieter but still noticeable.

Harddisk related noise

on my T43p the noise definitely comes from the harddisk and can be heard both in Windows and Linux. Only at boot time, before the harddisk spins up, or when I manually spin down the harddisk with

# hdparm -y /dev/sda

the system is silent.