Background
A lot of the time the most important quality I ask of the computer I'm using is a lack of noise. So for a while I've been trying to get my machines to be as quiet as possible. I've found that if a machine is too noisy I just won't use it, or will only turn it on as a very last resort.
First off, where does noise come from? Short answer: moving parts. The moving parts in a typical PC will be: fan on CPU, fan(s) in power supply, any additional cooling fans, hard-drive and CD/DVD drives (which may have cooling fans themselves). So, eliminating (or quieting) these moving parts will quieten down the whole machine.
Fans
Fans make noises two ways; the mechanism of the fan (ball-bearings etc) and the noise of the air moving past whatever it's being pulled past. The first part of this can be addressed with `better' fan mechanisms. The second can be improved by changing the path the air takes to produce less turbulence or reducing the rate of flow.
Reducing the rate of flow will reduce the amount of cooling provided by the fan. The level of cooling needed is related to the amount of heat produced by the equipment. Heat is produced by all electrical components, but most notably by components such as the main CPU or graphics processor and the power supply itself when heavily loaded (i.e. more power is being demanded by it). Modern processors and graphics cards consume a lot of power which is turned into heat requiring those parts to be aggressively cooled. At the same time the greater strain on the power supply generates more heat from it's components. The power supply has to both provide cooling for it's components and vent the heat inside the case which was dumped into the (case's) ambient atmosphere by the CPU and graphics processor fans, etc. etc.
So one approach to quietening is the reduce the power consumption of internal PC components and hence require less fans to keep them cool. As a general rule the amount of electrical power consumed by a component is relative to it's processing power, i.e. how fast it is. So we already have a trade of of power/noise so a quiet box will have less grunt then a noisy box (not by definition obviously, but it's largely true). This lack of grunt may or may not matter. Depending on software used, a machine will the equivalent of an Intel processor at around 200Mhz will be fine for basic Web browsing, e-mail etc. Get up to around 350Mhz equivalent and you can just about play DVDs, up to 600Mhz and you're playing DVDs smoothly (this is software DVD decoding, hardware assistance may reduce this requirement).
Drives
Hard-drives spin, the spinning creates noise and the drive head seeking creates noise. Hard-drives are getting quieter all the time, but they're very much still audible, and a lot of the improvement gets cancelled out as users demand increased performance. For example, moving from a 5400rpm drive to a 7200rpm drive increases the noise level (presuming similar mechanisms). You can get sound-insulating boxes to reduce the noise level (QuietPC are one supplier) but you may run into heat issues with high-performing drives and the noise isn't completely eliminated anyway. Using laptop drives instead of normal desktop PC drives may give better noise performance but with lower performance. Again, this lower performance may or may not matter.
The alternative is not to have a hard-drive at all. Obviously a machine needs to have access to some kind of writable mass-storage but this can be achieved by the quiet machine accessing discs on a remote server over a LAN. The remote server will be sufficiently far away/insulated as not to be audible from the position of the quiet box. Theoretical performance of such a LAN is 10MB/s (Megabytes per second) using 100Mb (Mega-bit) networking equipment which is pretty standard and cheap these days. In real life, performance will be less, maybe 7MB/s compared to maybe over 30MB/s sustained from a local drive. This may or may not matter.
As for CD/DVD drives, you may be able to put them in a disc server and access them remotely, but for some tasks such as playing DVDs various boring reasons (which don't include the speed required) often require the drive to be local. The best you can do here is get a quiet drive and live with it.
Selena v1
My first attempt at a very quiet machine (Selena) was based around the idea of: quiet power supply, no local hard-drive and a processor that required no fan to cool it.
Power supply
The power supply was simply a 250W Q-technology PSU from QuietPC. Although there is a fan in the PSU it's very quiet indeed and doesn't in itself make the computer too loud to use.
Mass storage
This machine had no local hard-drive and used a disc server for it's mass storage. The machine was to run OpenBSD and this needed to be loaded over the network. The disc server was also OpenBSD but this was unimportant any machine supplying DHCP, TFTP and NFS would have done. The net-card was an Intel Pro100/S which supported PXE booting. On turn-on the net-card goes through the process of requesting a sequence of boot-loaders and then the OpenBSD kernel which is enables for discless operation. The kernel mounts a NFS share to use as it's main filesystem and then OpenBSD carries on loading as normal.
Processor
To avoid the CPU requiring a fan I needed to reduce the heat so a passive (i.e. fanless) heatsink would be enough. For this I started with a 500Mhz AMD K6-2. Often people 'overclock' their processors, that is, run them faster then their official speed. When this is done the chip produces more heat firstly since heat output is related to clock speed, but also in order to get the chip to operate at the higher speed you often have to increase the voltage supplied to it. This increased voltage also increases the heat given off, so overclocking gives a double-whammy on heat production and often crazy levels of cooling are required.
Conversely, under-clocking gives a `double yummy' effect regarding heat. The lower clock speed means less heat is given off and the lower clock also means we can drop the voltage supplied to the chip. In this case I reduced the clock from 500Mhz to 166Mhz (The lowest it would go) and I also managed to reduce the voltage from 2.2V to 1.8V (Again, the lowest available). The heatsink was of a medium size and came from a heatsink/fan combination with the fan removed. In use the heatsink stayed pretty cool and I probably could have got away with going faster than 166Mhz but there was no need.
Result
It all worked nicely, the noise from the power supply was negligible and Selena v1 proved that very quiet machines were the way forward.
Selena v2
Processor and motherboard
The second version of Selena was based around a Via Eden motherboard. Eden boards have two nice features. Firstly they're based around a dead tiny like Mini-ITX form factor and the boards are only 17cm x 17cm. Secondly, they're designed to be low power and hence can often be run passively cooled at their official speed.
The actual board in Selena v2 is a EPIA 5000 with a 533Mhz processor. However, the processor isn't as fast as a Intel Pentium clock-for-clock, I guesstimate it's around the equivalent of a 350Mhz Pentium. Still, it's much faster than Selena v1.
Case
The case used was a Chyang Fun 7989. It's a pretty standard Mini-ITX cube style case. Small and very light.
Power supply
The power supply isn't a normal block-at-the-back but instead a 'laptop style' one with an external AC->DC convertor giving a constant voltage and an internal DC->DC convertor which provides the range of voltages required for the components. This power supply is only rated for 60W so is no use for 'normal' PC components but is more than enough for this setup.
Mass storage
The motherboard does have a on-board network connector but it doesn't work with the netboot loader. I could have used the one available PCI slot for the Intel net-card but I wanted that for a Matrox graphics card to avoid using the on-board graphics. To boot Selena v2 I use a compact flash memory card with the OpenBSD kernel on it, this boots as any other IDE device would. The kernel is still a discless version, i.e. the kernel loads from the flash card but once loaded it connects to the disc server as in v1.
Result
Selena v2 has no moving parts and as such is dead silent (my monitor makes more noise). It's quite quite lovely, and is my desktop machine of choice. By the way you can get these parts from people like Ultim8PC, LinITX and Mini-ITX.com.
Drmatt
While Selena v2 is an excellent desktop machine there are times that require a little more grunt, e.g. playing DVDs, DivX clips, big compile jobs etc. Drmatt is my attempt at a medium power machine which is still as quiet as possible.
Case
The case is a Morex/Procase Venus 688. As far as Small Form Factor cases go, it's actually pretty big at 22cm wide by 20cm high. It definitely looks more chunky than the Chyang Fun 7989 housing Selena. But it seems well made and looks nice enough. The only annoying thing about the case is the supplied power supply.
Power supply
Two problems with the power supply. Firstly, it's too noisy to take part in a quiet PC. The problem isn't so much the wind/fan noise (of which there is some, but it's not terrible) but buzzing. There's a really annoying high-pitched buzzing that comes from the electronics. The buzzing lowered in pitch slightly as more demand was made of the PSU. Note that the PSU I received was made by Enhance, other cases may come with other brands which may or may not have this problem.
The second problem with the power supply (which didn't affect me for this project) is it's a very non-standard size. The form seems to be one of a multitude of Flex ATX standards so good luck finding a replacement power supply to fit the case.
For a replacement supply I wanted to use the same laptop style one as Selena. However, a power consumption meter showed that just the 60W supply powering just the motherboard was drawing up to 55W from the mains. Now it certainly is possible to run this board, laptop hard-drive and laptop DVD ROM from a 60W supply as some companies sell machines based around this and there may well be a significant margin of error on the meter. However, since I wanted to use a full-size DVD-ROM and an off-board graphics card I didn't fancy my chances. As it turns out a company called Lex do make a 110W version of the laptop style power supply so I went for that.
Unlike the 60W supplies where the DC->DC board is connected to the edge of the case by a cable, the power receiving jack on the 110W version is hard attached to the board. This means you either have to make your own 4pin-4pin extender cable to get it to the edge of the case, or position the board so it touches an edge. I went for the later option, mounting the convertor board on plywood with one end attached to the floppy drive bay. The power receiving jack protudes through one of the 9pin serial port knock out sections on the case (some filing required).
Processor and motherboard
Drmatt is based around a Via EPIA-M10000 Nehemiah motherboard. The processor is 1Ghz versus Selena's 533Mhz but is quicker clock-for-clock (although still not equivalent to an Intel chip) so there's more a difference then the relative clock speeds suggest. Unfortunately, the processor generates enough heat that it comes with an active heat-sink fan as standard. That's not to say you can't passively cool it, you just need a bigger passive heatsink.
A company called Tranquil PC do a machine based around a M10000 where the heatsink on the motherboard chipset (including on-board graphics) and the heatsink/fan on the processor is replaced with a single heatsink which is a rather neat solution. My approach is somewhat more hacky.
It turns out there is just (and I mean just) enough room on the board to fit a Zalman flower cooler. Obviously there's no mounting points for it, so thermally conductive epoxy is needed. I used Arctic Alumina epoxy which is non-conductive. Positioning the heatsink is a little tricky since the mounting plugs from the CLE266 chipset heatsink stop the heatsink going as far back as would be desirable so a few mm of heatsink is hanging over the edge of the motherboard. The width of the Venus case stops this overhang being a problem, but it's still pretty tight. Even with the overhang all of the processor (AFAICT) is still covered by heatsink. Also, some of the outermost fins have to be compressed together to avoid touching the DIMM and blocking the power supply connector.
Please bare in mind this is all thoroughly warranty voiding. Also, glueing heatsinks to CPUs is frowned upon by those that do these things. Arctic themselves say the Alumina Epoxy shouldn't be used for CPUs. It works for me though, and the CPU gets no hotter than it did with the stock HSF. Oh, one more thing. Don't put too much epoxy on the heatsink or it'll ooze out the sides and make you look like a complete amateur. Ahem.
Mass storage
Drmatt doesn't net-boot, but uses a 20GB IBM laptop drive which is actually pretty quiet.
Fans
I wasn't massively keen on the heat from the all the parts in Drmatt just sitting around inside the case so I added a 80mm cooling fan. I tried both a Zalman fan and a Noiseblocker S2. According to the specs the Noiseblocker should have been quieter (11dbA claimed) but I much preferred the Zalman which buzzed less.
Since only a small amount of airflow is needed I'm using 3 speed limited devices on the fan. The first is the speed limiting resistor that came with the Zalman, the 2nd is a fan resistor from Maplins and the 3rd is the speed controller that came with the Noiseblocker turned up to half-way. I can't measure the RPM of this fan since the lowest non-zero number the BIOS measures is 2500rpm.
The fan is mounted in the gutted shell of the Enhance PSU (there goes that warranty).
Result
The result is pretty good, not in Selena v2's class but certainly better than the average PC. In a room with anything else going on you can't tell Drmatt is running, but in quiet moments particularly late at night you can still hear the drive and fan.
An image of the insides is available (67KB). I never said it was pretty.
