So my Yosemite install is slow - what to do?

I installed Yosemite today on a 2010 MBP, 8GB RAM, 2.4Ghz Intel Core 2 Duo.

Its awful, its so slow, everything seems to hang, even simple things like Finder. Chrome is going as a snails pace and Mail is struggling too. Its nearly, very nearly unusable.

My attempts to optimize the Mac for speed are as follows:

  • I have disabled all extensions in Chrome, turned off a whole host of stuff from 3rd parties in OSX that I thought might be giving me issues.

I can see CPU usage is high for a variety of tasks every now and again, including;

  • md_worker
  • Setup
  • WindowServer

Any ideas anyone to speed up my Mac or diagnose what is causing the slowness?


Troubleshooting a slow mac is fairly easy, but sometimes tedious.

You will want to and quit all apps.

You might even go to the Users & Groups preference and remove all applications that start when you log in to your Mac.

Turn off WiFi and then shut down the Mac so you can start isolating it. Remove all peripherals except the keyboard, display and power cord. Power on and then log in and let it run for 5 minutes and then take a snapshot of the Activity Monitor. Look and see what CPU usage is and if the background tasks are taking any CPU time.

If so, dig deeper - open terminal and run "sudo sysdiagnose"

If not, go ahead and connect your peripherals one at a time.

Check the CPU/Activity Monitor and watch both the Memory Pressure graph and the CPU. If you want, you can also look at energy, but that's better for half hour snapshots for me.

At this point, you should know the OS is fine and all of your peripherals and hard drives are not causing the slowness.

Now go ahead and start the apps you choose to run when it's slow. Again, you are still disconnected from any network - just checking the OS and the CPU.

When that's fine, you can conclude that the data coming in from the network was causing a load the OS wasn't handling.

If you can narrow things down, get a sysdiagnose from a clean start and again when it is "slow" and post a second question with details of what your initial troubleshooting has shown.


I have a MBP mid 2012, 16G RAM, 256G SSD which is also on OS X Yosemite, I found after each restart, there is about an hour "smooth time", then the task switcher starts panic, and after a few days the whole machine is slow.

I started investigate this two weeks before, now seems it is all due to the Google Chrome. After uninstalling chrome, everything gets fine. I checked the Google help forum, and they said the "not responding" process in the activity monitor is only "cosmetic problem", but in my case it is certainly not.

Even I restart the system without start the Google Chrome at all, seems it can still triggers update in the background, and then makes my machine extremely slow.

After being a five years Chrome user, really regret I have to ditch it like ditching Opera five years ago.


Check out Console.app.

I had serious battery life issues, so I left Console.app running for a couple of days, noting the major problems at the end of the day. There were some super noisy processes, and quieting them greatly improved my case. There's still this glaring problem that I haven't found out how to shut-up yet, but I know it's there because of Console.

10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::scanDone: Scheduling cache purge timer in 30 seconds.
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:00.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:01.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:01.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:01.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:01.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:01.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:01.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:02.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:02.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:02.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:03.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:03.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:03.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:03.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:03.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:03.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:04.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:05.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:05.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:05.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:05.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:05.000 PM kernel[0]: IO80211ScanManager::startScan: pid 29 had pending scan request. Deleting.
10/21/14 12:32:05.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:06.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:06.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:07.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:07.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:32:07.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:32:07.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:32:30.000 PM kernel[0]: IO80211ScanManager::cachePurge: clearEntries[0] Firing!
10/21/14 12:32:30.000 PM kernel[0]: IO80211ScanManager::cachePurge: Rescheduling in 4 seconds.
10/21/14 12:32:34.000 PM kernel[0]: IO80211ScanManager::cachePurge: clearEntries[0] Firing!
10/21/14 12:32:34.000 PM kernel[0]: IO80211ScanManager::cachePurge: Rescheduling in 1 seconds.
10/21/14 12:32:35.000 PM kernel[0]: IO80211ScanManager::cachePurge: clearEntries[0] Firing!
10/21/14 12:32:35.000 PM kernel[0]: IO80211ScanManager::cachePurge: NOT Rescheduling.
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::scanDone: Scheduling cache purge timer in 30 seconds.
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:05.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:06.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:06.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:06.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:06.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:06.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:06.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:07.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:07.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:07.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:08.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:08.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:08.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:09.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:10.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:10.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:10.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:10.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:10.000 PM kernel[0]: IO80211ScanManager::startScan: pid 29 had pending scan request. Deleting.
10/21/14 12:34:10.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:11.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:11.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:12.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:12.000 PM kernel[0]: IO80211ScanManager::startScan: Broadcast scan request received from 'airportd' (pid 29) ().
10/21/14 12:34:12.000 PM kernel[0]: IO80211ScanManager::startScan: Initiating scan.
10/21/14 12:34:12.000 PM kernel[0]: IO80211ScanManager::getScanResult: All scan results returned for 'airportd' (pid 29).
10/21/14 12:34:35.000 PM kernel[0]: IO80211ScanManager::cachePurge: clearEntries[0] Firing!
10/21/14 12:34:35.000 PM kernel[0]: IO80211ScanManager::cachePurge: Rescheduling in 4 seconds.
10/21/14 12:34:39.000 PM kernel[0]: IO80211ScanManager::cachePurge: clearEntries[0] Firing!
10/21/14 12:34:39.000 PM kernel[0]: IO80211ScanManager::cachePurge: Rescheduling in 1 seconds.
10/21/14 12:34:40.000 PM kernel[0]: IO80211ScanManager::cachePurge: clearEntries[0] Firing!
10/21/14 12:34:40.000 PM kernel[0]: IO80211ScanManager::cachePurge: NOT Rescheduling.

For the past two weeks my MacBook Pro running Yosemite 10.10.2 was afflicted by "slow syndrome". Everything was slow: logins took up to a full minute, typing would be periodically interrupted by the spinning pizza, etc. Ouch.


FIXES THAT (FRUSTATINGLY) DIDN'T WORK

Permissions repair, safe mode boot, disconnecting from the internet, logging into a freshly created account, PRAM reset, all were unhelpful. Ouch.


DIAGNOSTICS THAT (FRUSTATINGLY) WERE UNINFORMATIVE

System logs and the system profiler were unrevealing. Ouch. Frustratingly, the "pizza" would appear even when System Profiler showed NO processes as consuming CPU cycles and/or memory. Ouch.


THE FIX THAT WORKED FOR ME:

Now described under the question "This “weird group trick” makes MacBook Pro login, apps, and systems run slow slow slow … but why? "