a glob of nerdishness

August 27, 2007

Garbage collected iPhoto 7?

written by natevw @ 7:19 am

Does iPhoto 7 use some garbage collection features? If so, that would explain the semi-regular beach balls, regardless of what the user is doing. I’ve been wondering for a while if Tiger will get updated to support the new garbage-collected runtime from Leopard, and perhaps the new iLife suite is testing some of that out internally.

On the other hand, this could also be caused by paging. I was only able to get it to hang up twice this morning — the hard drive was churning, so this points to paging, but I didn’t see much change in iPhoto’s Real vs. Virtual memory usage. Any ideas for a better experimental or investigative method?

Update: While the results posted in the comments aren’t entirely conclusive, the simplest explanation is that the hangs were for plain old paging. The 7.0.2 update seems to have greatly reduced these hang-ups either way.

4 Comments

  1. Have you looked in Activity Monitor at the page ins/outs or the disk activity at those times to see what it says? Otherwise, I think there are other, better ways, but I’m afraid I’m not sure what they are or how to use them.

    Comment by hjon — August 27, 2007 @ 6:57 pm

  2. I did look at those stats in Activity monitor, but I was still kind of groggy in the morning and wasn’t sure by how much they went up. I’ll try it again, writing the starting count down first.

    Comment by natevw — August 29, 2007 @ 5:51 am

  3. I’ve been using it for almost an hour now. Fortunately, iPhoto 7.0.2 (upgraded yesterday afternoon) seems to be a lot steadier overall. I only got a good long hang up twice, one of which did burn through nearly 30,000 page-ins. Over the hour the page-ins have been climbing, from 476,203 to 603,869 in addition to eating up all but 68MB of 1.04GB free, so iPhoto definitely keeps a lot in memory.

    There were still occasional hang-ups that , but they each lasted only a second tops. Only 1 page-in during these. What’s curious to me is that the page-outs only went from 127,293 to 177,263….I thought that memory had to be paged out before being paged in. Or does mmap() use the pager? An experiment for another day, I suppose…

    Comment by natevw — August 29, 2007 @ 6:45 am

  4. Two things.

    1. [Regarding paging] You’d think that after just taking a class about Operating Systems and talking about paging, etc. I would remember. It sounds right (page out in order to page in), but I’m going to have to go look it up via my book or the Internet to confirm.

    2. [Regarding mmp()] If I still had my borrowed copy of “OS X Internals”, I could probably tell you. :-)

    Comment by hjon — August 29, 2007 @ 7:32 am

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.