iPhoto 7.0: Can generate a huge about of CPU activity while idle in background
Posted by Pierre Igot in: iPhotoSeptember 24th, 2007 • 2:23 pm
This is an intermittent problem with the latest version of iPhoto (7.0), included in iLife ’08. I started seeing it (intermittently) as soon as I installed iPhoto 7.0, and the problem is still there in the latest version, 7.0.2.
Basically, what happens is that, from time to time, if I leave iPhoto open and idle in the background and don’t use it at all, all of a sudden at some point I start noticing a lot of unexplained CPU activity on my Mac Pro. It’s not to the point that the whole Mac OS X environment is actually slowed down—the Mac Pro does have four 2.66 GHz cores, after all—but I notice it because I have MenuMeters‘s CPU activity monitor visible at all times in my menu bar. When my machine is idle or not doing much, the four CPU indicators are usually very low, around 10-20%.
When iPhoto starts acting up, all of a sudden the four CPU indicators start hovering around the half-way mark instead. (The fact that all four CPU indicators are affected proves that iPhoto is indeed written to take full advantage of multiple cores, I guess!) I know it’s iPhoto, because I then launch Apple’s own Activity Monitor application, and sort active processes by CPU usage, and iPhoto is up there at the top, using around 100% of processing power on average. (That’s 100% of a core, not 100% of the whole CPU unit.)
As far as I can tell, iPhoto is not actually in the process of doing anything. Nor should it be—it’s just running idle in the background. Even if I switch iPhoto to the foreground and start actually using it, the unexplained activity continues. The only way to make it stop is to quit and relaunch iPhoto. Then things go back to normal, and stay there for a while.
Like I said, the unexplained CPU activity seems to happen randomly. It happened on my machine yesterday, approximately two days after I last used iPhoto (and then left it running idle in the background). I don’t know what triggered it. I just know that I was using my machine for something else, and then all of a sudden I noticed all this CPU activity. I quit and relaunched iPhoto, and left it open. It’s been more than 24 hours now, and it is still behaving perfectly normally.
I bet it’s going to be a tricky one to properly circumscribe and submit to Apple as a bug report. The next time it happens, I will try taking a “sample” of the running iPhoto application with the Feedback Tools application (available to ADC members). I’ll then submit a bug report along with the sample. But I don’t know if this will help. I know that Apple’s developers usually ask for a sample when an application freezes. The sample taken while the application is frozen apparently tells them more than just that “the application is frozen.” I don’t know if it also tells them more when the application is not frozen, but simply using too much CPU power for no apparent reason. I guess we’ll see.
I searched the Apple Discussions forum and could only find one thread about this. So I guess it’s not a hugely pervasive problem (or maybe most iPhoto users quit the application when they are not using it). This will make it all the more difficult to track it down and get it acknowledged by Apple.
But one thing is for sure: MenuMeters is an indispensable monitoring/troubleshooting tool. If I didn’t have it running, I wouldn’t necessarily notice such problems, simply because I have lots of spare CPU power. But that means that I might have background applications wasting CPU cycles and burning electricity for absolutely no reason for days. I might not be the most energy-conscious Mac user, but I do try to keep energy wasting to a minimum…
September 24th, 2007 at Sep 24, 07 | 6:01 pm
Interesting problem… curious to learn what that is about.
I usually just let Activity Monitor run in the Dock which gives an equally handy view of CPU activity and a single-click way to the more detailed process list with handy buttons to kill processes. Activity Monitor can also sample processes for you – which I find quicker than using Feedback Tools. It’s also more versatile I think as it can sample processes by any user (after entering an administrator password).
How is the new iPhoto’s performance? iPhoto 6 started being a bit slow once I crossed the 5000 photo barrier. Does iPhoto 7 (’08) improve on that? I am quite tempted to get it, but I’d be too annoyed if it’s not actually faster, particularly as I hardly ever use the other iLife applications. Unfortunately demo libraries never seem to contain enough photos for testing performance, so some insight into this would be appreciated.
September 24th, 2007 at Sep 24, 07 | 6:42 pm
Well, it’s just happened again (while I was working in iTunes… Wonder if there is a connection!). I did get a sample with Feedback Tools, although of course it’s impenetrable garbage to me. I’ll send it to Apple.
I don’t leave Activity Monitor open because of that memory leak that was reported on a while back and that I was able to observe myself on my machine at some point. But maybe the leak got fixed in a more recent update. I don’t know. MenuMeters works for me :).
I don’t have any problems with iPhoto performance, but I have had any problems in the past few versions anyway, and I have approximately 10,000 photos. But then of course I have a Mac Pro… So I cannot really comment on performance on slower machines.
September 25th, 2007 at Sep 25, 07 | 1:28 am
The Activity Monitor leak was plugged with 10.4.9. :)