Live data from Hacker News

Optimizing for Fan Noise

prog21.dadgum.com

11–20 of 30 posts

Re: Optimizing for Fan Noise

#11
post #9

In the end, I took this as a discussion of thermal energy dissipation as it pertains to mobile devices. In other words, battery life. My conclusion is that we need to vastly improve the energy density of batteries (or consider using carbon-based energy sources to power mobile devices). Edit: Not sure why this is getting downvoted. The end of the article really does discuss mobile devices and energy dissipation - whic…

The batteries in your devices represent decades of R&D; scientists are spending entire careers looking for 5% improvements. Saying "just use better batteries" appears to trivialize that effort. Also, programmers (generally) aren't qualified to invent new battery chemistries, but they can make software use fewer cycles.

"Just use better batteries" does make it sound trivial, but those were not my words at all. Saying that we need to "vastly improve energy density" felt, to me, to be conceding that it would require vast effort. That is why I also offered an alternative - carbon-based fuels. They pack an extremely high energy density, but are volatile and would require very special approaches to make them safe and easy to refill. In other words, no matter which option one looks into, it will take a lot of work to improve on the state of the art. By no means did I intend to convey the message that I think otherwise.

Re: Optimizing for Fan Noise

#12
post #8

Doubling the speed of a program by moving from one to four cores is a win if you're looking at the raw benchmark numbers, but an overall loss in terms of computation per watt. The first time I read this I didn't understand it, but the author has laid a trap here for the unwary reader in the word "doubling". If you can get 4x the performance using 4 cores the energy efficiency is the same or better, but if your progra…

http://en.wikipedia.org/wiki/Parallel_computing#Amdahl.27s_l...

Basically, you will never get a linear increase with parallel computing, especially on consumer type apps that are much more synchronous. So running multiple cores, with requisite context switches will get less computing per watt, even if it isn't as bad as the 2x number.

Re: Optimizing for Fan Noise

#13
Based on what I've seen in my experiences with building my own computers, the cause of fan noise in computers is not so much a necessary evil in our age of faster processing (old CPUs like the Pentium 4 ran hot as well), but rather a simple hardware problem due to the fact that many computer manufactures use cheap/noisy small stock fans. Replace a computer cooling systems with a slower-rotating larger diameter fan, and you will most likely have more airflow with less noise. Obviously that solution would be harder in space-constrained laptops, but I imagine with some clever engineering (ex. having large fans blow out the bottom of the computer) the designers could work out those issues if they really had the money and inclination to do so.

Re: Optimizing for Fan Noise

#14
post #8

Doubling the speed of a program by moving from one to four cores is a win if you're looking at the raw benchmark numbers, but an overall loss in terms of computation per watt. The first time I read this I didn't understand it, but the author has laid a trap here for the unwary reader in the word "doubling". If you can get 4x the performance using 4 cores the energy efficiency is the same or better, but if your progra…

http://en.wikipedia.org/wiki/Parallel_computing#Amdahl.27s_l... Basically, you will never get a linear increase with parallel computing, especially on consumer type apps that are much more synchronous. So running multiple cores, with requisite context switches will get less computing per watt, even if it isn't as bad as the 2x number.

"with requisite context switches"

Can you explain this part?

Re: Optimizing for Fan Noise

#15
post #8

Doubling the speed of a program by moving from one to four cores is a win if you're looking at the raw benchmark numbers, but an overall loss in terms of computation per watt. The first time I read this I didn't understand it, but the author has laid a trap here for the unwary reader in the word "doubling". If you can get 4x the performance using 4 cores the energy efficiency is the same or better, but if your progra…

http://en.wikipedia.org/wiki/Parallel_computing#Amdahl.27s_l... Basically, you will never get a linear increase with parallel computing, especially on consumer type apps that are much more synchronous. So running multiple cores, with requisite context switches will get less computing per watt, even if it isn't as bad as the 2x number.

Sort of. Herb Sutter shows some examples where executing programs in parallel gives superlinear speed-ups: http://herbsutter.wordpress.com/2008/01/30/effective-concurr...

Re: Optimizing for Fan Noise

#16

The author makes a point that moving an application from one core to four might look good in benchmarks, but that it will peg all four cores and cause the fan to start running. I'd argue that that is precisely what you want, and that the operating system should provide a user-controlled mechanism to throttle the CPU back. That way, if you want raw performance, you can get it, but if you want a quiet computer and long…

OS X has what is probably the most aggressive set of software optimizations aimed at increasing battery life, and no GUI to configure it. The only options you have without delving into command line tools are to turn down screen brightness, disable wi-fi and bluetooth, turn off extra processor cores, and quit applications. Fortunately, the defaults work very well for any common real-world use.

Windows offers pretty good configuration options for power management, including setting maximum processor speed (as a percentage) while running on battery or on AC.

The author seems to be blurring the lines between fixed tasks like transcoding videos and interactive tasks like games. It's not at all obvious that transcoding with a single-threaded app saves any power over the duration of the job than with a multi-threaded implementation. Most laptop CPUs don't have the kind of power gating that are on the latest chips like the Core i7, so even if no instructions are issued to a core, it still draws some power.

With interactive tasks, the only way to save power is to do less, so that the CPU and other components can spend most of their time waiting for the user while in a low-power state. Predictive caching and speculative execution increase the responsiveness of a system on average, but at the cost of performing some tasks whose results won't be used. The only real take-away from this article is that apps that might be used on the go should provide a way to disable these techniques.

(It's important to note that games don't do a lot of this stuff, so there your only options are to turn down the eye candy and the frame rate. A good example of how to accomplish this is Torchlight's netbook mode.)

Re: Optimizing for Fan Noise

#17
Use a CPU that does not require a fan. The 1 Mhz 6502 did not need a fan. The ARM, Apple A4, and others processors do not need fans. The problem is the Intel architecture has too many fans.

Re: Optimizing for Fan Noise

#18

Use a CPU that does not require a fan. The 1 Mhz 6502 did not need a fan. The ARM, Apple A4, and others processors do not need fans. The problem is the Intel architecture has too many fans.

Really, I guess all those other cpus are just as fast and have the same cache and cores too huh?

Re: Optimizing for Fan Noise

#19
Battery life is a fair optimization. Fan noise is a function of your fans. I have a quad-core i7, and when I max it out with 8 threads (it has HT), it does not make any noise. The stock cooler is nearly silent. My case has 140mm fans (!), and they don't make much noise either. They are even mounted via rubber hangers, so the vibration is not transfered to the case (same goes for the hard drives, although those are quite silent now too).

In addition to this, the computer is on the floor, not right next to my ears. So even if it were louder, it would still not annoy me.

So basically, I think your computer is broken if you can hear the fans. It's either designed wrong, or in the wrong position, or both.

Re: Optimizing for Fan Noise

#20
My solution: A small wire shelf with foldable legs gets used as our laptop desk. The foldable legs allows our "desk" to be adjusted to two different heights to suit different user preferences. The wire shelving allows adequate airflow around the laptop. It never gets hot like it used to on a solid surface. This solution costs under $10 and can be implemented with one very brief shopping trip.
Post reply on HN