Speed Up Your Mac

More Stories in this Series

Troubleshoot the spinning beach ball

Officially, it’s called the Spinning Wait Cursor or the Spinning Disc Pointer. Colloquially, it goes by many names, including the Spinning Beach Ball. Whatever you call it, the colorful pinwheel that replaces your mouse cursor is not a welcome sight.

According to Apple's Human Interface Guidelines, "the spinning wait cursor is displayed automatically by the window server when an application cannot handle all of the events it receives. If an application does not respond for about 2 to 4 seconds, the spinning wait cursor appears." (WindowServer is the background process that runs the Mac OS X graphical user interface.) Which is to say, the beachball is there to tell you your Mac is too busy with a task to respond normally.

Usually, the pinwheel quickly reverts to the mouse pointer. When it doesn’t go away, it turns into what some call the Spinning Beach Ball of Death (also known as the SBBOD or the Marble of Doom). At times like those, it helps to know why the thing appears and what you can do to make it go away.

Hardware causes

The most basic reason the beach ball appears is because your Mac's hardware can’t handle the software task at hand. It’s not unusual to see the occasional beach ball when you Mac is performing complex computing tasks. Even everyday activities—such as syncing with iTunes—can temporarily overtax the CPU.

To find out if the CPU is a bottleneck on performance, use Activity Monitor (/Applications/Utilities) to monitor CPU usage. You don’t have to keep an Activity Monitor window open all the time; there are less obtrusive ways to use it. For example, open Activity Monitor then Control-click on its Dock icon and select Dock Icon -> Show CPU Usage. That will turn the icon itself into a CPU usage graph; you can then close the main Activity Monitor window. You can also Control-click on the icon and select Monitors -> CPU Usage, or Monitors -> Floating CPU Window. That will place a small activity graph in the corner of your screen.

The beach ball may also appear if you don’t have enough RAM. Virtual memory paging and swapping (freeing RAM by moving data to swap files on disk and back) consumes CPU cycles. Insufficient RAM means more paging and swapping, which means fewer CPU cycles are available to apps. If apps can't get the CPU time they want, the beach ball appears. That’s why you want as much RAM as your budget will allow and your Mac can accommodate.

Similarly, if your startup disk is nearly full, less space is available for swap files. Again, that leads to more CPU cycles devoted to swapping and more beach balls. As a rule of thumb, keep at least 10GB free on your startup disk. Again, you can use Activity Monitor to diagnose RAM and hard drive shortages; open the System Memory or Disk Usage tabs. In the pie charts shown in these panes, more green is better.

If you can isolate a hardware cause, the solution is obvious: You need to upgrade. In the case of the CPU, however, that means buying a new Mac. If it’s the RAM or the hard drive, you can upgrade those individually. If upgrading isn’t an option for you, you're just going to have to run fewer applications concurrently. Clearly, the more resource-intensive apps you work with daily, the fewer you should run simultaneously.

One other hardware-related reason the beach ball may appear: Your hard disk or optical drives may enter Standby mode, spinning down after a period of inactivity to save energy. If you try to access them when they're in Standby (by opening or saving a file, for example), you may see the beach ball while the disk spins up. For some drives, that may take many seconds.

You can, if you wish, keep your startup disk from ever entering Standby mode. To do so, open Energy Saver preferences (in System Preferences) and deselect Put the Hard Disk(s) to Sleep When Possible. Note that all of your drives will still enter Standby mode when your Mac enters its own sleep mode; you may then see the beach ball if you wake your Mac and then immediately try to access a disk.

Energy Preferences
To keep drives from entering Standby mode, turn off Put the Hard Disk(s) to Sleep When Possible in the Energy Saver preferences pane.
That Energy Saver option primarily affects your startup drive alone. Other drives (internal or external) may still spin down on their own schedules; that means you could see the beach ball if you try to access them at the wrong time. Contact the manufacturer of the drive to see if a firmware update is available to improve its cooperation with Mac OS X’s power management.

Software causes

Even if your hardware is adequate, an application or process can still monopolize your system. Perhaps an application is hung in an infinite loop or it’s simply inefficient. Maybe a background process is running amok, hogging CPU cycles. An errant third-party plug-in can turn a fast application into a slug. Whatever the reason, the program takes over the CPU and up pops the Ball.

If you suspect that the SBBOD is software-based, the first thing to do is simply to wait for a few minutes to see if the app starts responding again or crashes. While you're waiting, you can find out which apps are hogging more than their fair share of system resources: Open Activity Monitor’s CPU tab and sort by the % CPU column in descending order; the apps at the top are the ones using the most CPU cycles.

Activity Monitor
To find out which software processes are hogging CPU cycles, sort by Activity Monitor's % CPU column.
A frozen process will appear here in red text, with the words Not Responding next to its name. If you recognize the process—if, for example, it's an application you know you opened—select it, click on Quit Process, then click on either Quit or Force Quit. Don't quit processes whose User is root: Those are system processes, and terminating them may cause your Mac to freeze, requiring a restart.

If you are able to switch to other applications and the SBBOD appears in all of them, that could be a sign that one of your Mac’s system process is hung. In that case, try to shut down or restart the Mac by pressing Command-Eject or Command-Control-Eject, respectively. Otherwise, press and hold the power button to shut down the Mac, restart, then open the system log in Console (/Applications/Utilities) to see if you can determine the cause.

The SBBOD may also appear when you load a Web page containing a vast amount of data or a JavaScript that is either inefficient or incompatible. Most browsers recognize this situation and open an alert window stating that a script is slowing the browser. Clicking on Stop in this alert should end the problem (though the page may then render incorrectly). Otherwise, you’ll have to Force Quit the browser. If you can, you should report the problem the site’s Webmaster.

Ad-blocking—whether it’s built into your browser or enforced by an add-on—may also cause a browser to hang. In this case, Force Quit the browser, then disable ad-blocking for that particular site.

The Bottom Line

While you can’t prevent every instance of the SBBOD—it is there to tell you your Mac is busy—a little patience and an occasional Force Quit or Restart should make those instances a bit more bearable.

Gregory Swain runs The X Lab, a site dedicated to troubleshooting Mac OS X. He also writes and publishes the Troubleshooting Mac OS X e-book series.

Product mentioned in this article

(1 items)

Subscribe to the MacWeek Newsletter

Comments