I have a mid-2010 MBP, with 8gb RAM and an aftermarket 7200RPM hard drive, running Snow Leopard 10.6. I have been using this SL install for about 10 months, and the desktop is barely usable for 3-5 minutes after Finder appears.

I've pruned my LoginItems down to the minimum (which is still a lot...) but I'm betting there's some cruft elsewhere that I can trim.

Googling the issue reveals tons of moronic clean-up-your-mac for idiots guides. Can someone provide a more technical synopsis of OSX' startup process? What are some other optimizations I can perform to speed up startup? Is there a way I can delay startup processes over a larger interval to minimize hard-drive thrashing?

My goal is to have a a usable session within 10-20 seconds of Finder/Launcher appearing. I really don't want to reformat just to get performance back.

Thank you!


  • 1
    A good starting point would be to narrow down what's using up your resources. Open Activity Monitor and take note of whether any processes are using up lots of CPU, what the memory stats are, and if there's a lot of disk activity going on. – robmathers Oct 27 '12 at 2:28

First thing I would do is isolate the problem to either your user account or your OS install. To this end, just create a new user and try logging in as that user after a fresh boot. If the system is sluggish also under this account, at least part of the issue must be outside your main user account.

From the "moronic clean-up-your-mac for idiots guides", I suppose, you have already learnt about LaunchAgents and LaunchDaemons, both for individual users in ~/Library/LaunchAgents, and for the entire system, in /Library/Launch{Agents,Daemons} and cleaned those out?

Bear in mind that applications are really trying to be helpful in adding those back whenever you launch them.

As an alternative to purging the files, you could try disabling them via launchctl unload -w ~/Library/LaunchAgents/com.example.launchdaemeon in Terminal, because this adds them to a launchd blacklist that applications will have a harder time to override. From man launchctl:

 unload [-w] [-S sessiontype] [-D domain] paths ...
          Unload the specified configuration files or directories of con-
          figuration files.  This will also stop the job if it is running.

          -w       Overrides the Disabled key and sets it to true. In pre-
                   vious versions, this option would modify the configura-
                   tion file. Now the state of the Disabled key is stored
                   elsewhere on-disk.

Finally, some really archane applications add their daemons to /Library/Preferences/com.apple.loginwindow.plist. You can open this file in Xcode and check if it has any entries that you want to get rid of.

  • Thank you! As for the guides, they really don't go to this kind of depth. – Tom Corelis Oct 28 '12 at 18:51
  • You're welcome. It would be great if you could let me and others know what turns out to be the culprit. Thanks. – simonair Oct 28 '12 at 20:34
  • Purging LaunchAgents and LaunchDaemons trimmed 75% of the sluggishness. There is still considerable post-Finder thrashing, and I haven't tested if its just LoginItems, but someone suggested writing an automator (or maybe a plain shell script) that manually loads LoginItems between sleep() intervals... – Tom Corelis Oct 29 '12 at 20:56

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .