APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

2005/06/06 idle loop


Some material is very old and may be incorrect today

© June 2005 Tony Lawrence

There's an old story about a program that didn't run fast enough. A programmer used a profiler and discovered that one routine was taking a lot of CPU time. Great effort was expended to modify it, yet the program ran no faster. The joke was that the routine was the program's "idle loop" - what it would run when it had no other work to do.

It sounds silly, but really only is if you are thinking of the idle loop as something that does nothing beyond perhaps waiting to be interrupted by real work. In fact, the so called idle loop is often used as a place to call tasks that are necessary, so it may very well make sense to optimise it. This story from the BSD world describes an optimization that really paid off: http://kerneltrap.org/node/5169

Another place that a poorly written idle loop can have bad effects is when you are running multiple operating systems in virtual machines. If a guest OS enters an idle loop because it has no use for the CPU at this moment, that doesn't mean that other OSes couldn't make better use of those cycles: http://www.vmware.com/support/kb/enduser/std_adp.php?p_faqid=1077


If you found something useful today, please consider a small donation.



Got something to add? Send me email.





(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

->
-> Does it make sense to optimize the idle loop?


Inexpensive and informative Apple related e-books:

Take Control of Automating Your Mac

Take Control of Parallels Desktop 12

Take Control of iCloud, Fifth Edition

Photos for Mac: A Take Control Crash Course

Take Control of Pages





More Articles by © Tony Lawrence





Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us


Printer Friendly Version





I can’t go to a restaurant and order food because I keep looking at the fonts on the menu. (Donald Knuth)




Linux posts

Troubleshooting posts


This post tagged:

Kernel



Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode