Don Marti

Sun 17 Apr 2005 08:33:51 PM PDT

Notes on keeping the desktop machine quiet, version two.

Distance is your friend. Position the desktop machine as far away from your ears as possible. With a USB hub, you can run one long VGA cable and one long USB cable from the system unit to your work area, and you can use a USB CD or DVD drive so that you don't need to be near the box.

Position the box on the other side of furniture from you. Put it on a carpeted surface.

Feel for resonant sheet metal parts and move any vibrating parts away from them. Some people use Dynamat, but it's probably overkill for most cases. Check for rattles.

Tighten all screws and Velcro all cables.

Use smartmontools to monitor drive temperature and Lm_sensors to monitor CPU temperature. Monitoring means you don't have to over-cool.

Install a Zalman ZM400B-APS power supply. It's thermostatically controlled.

Install a Zalman CNPS7000A-Cu CPU cooler, with the pot cranked all the way down. Crank it up if your CPU is running hot.

(That does quite a bit for two obvious noise sources -- the power supply fan and the processor fan. That leaves the hard drive.)

Use a Seagate Barracuda hard drive.

Install lots and lots of RAM.

Use tmpfs for /tmp.

Make /var/tmp a symlink to /tmp

Set a long "commit" for the ext3 filesystems, except /home, in /etc/fstab.

(Yes, folks, there is such a thing as the "commit" option. Don't believe the man page.)

Set a reasonable hdparm spindown time (on Debian, you can do this in /etc/hdparm.conf)

Sneak up behind the VM subsystem and throw salt on its tail:

echo 120000 > /proc/sys/vm/dirty_writeback_centisecs
echo 90 > /proc/sys/vm/dirty_ratio
echo 90 > /proc/sys/vm/dirty_background_ratio

(From LWN -- I'll have to modify this when I have a kernel with laptop mode on the box.)

Disable MARK in syslog with "-m 0"

set xscreensaver to do an APMS blank instead of running a display hack -- yes, finding a random hack will make the drive spin up.

turn off your web browser's on-disk cache, and crank up the memory cache.