What is "routined" and why is it eating my CPU?

I wondered the same thing! It does have a small but somewhat helpful man page, which you can get via man routined in Terminal.

     routined -- A daemon that learns the historical location patterns of a user.

     routined is a per-user daemon that learns historical location patterns of a user and predicts
     future visits to locations.

     There are no configurations to routined, and users should not run routined manually.

As to what it's doing? One way to find this out for (nearly) any process is to take a sample using Activity Monitor:

Activity Monitor Sample

That will then produce a fairly verbose report that you can send to Apple using Feedback Assistant: https://developer.apple.com/bug-reporting/

In my sample, it appears to be training a machine learning model:

 +               1440 __44-[RTLearnedLocationEngine trainWithHandler:]_block_invoke  (in libcoreroutine.dylib) + 475  [0x7fff6ff29e85]
    +                 1440 -[RTLearnedLocationEngine _trainWithHandler:]  (in libcoreroutine.dylib) + 1041  [0x7fff6ff29612]
    +                   1440 -[RTLearnedLocationEngine _trainWithFromDate:ToDate:forLastLearnedVisit:handler:]  (in libcoreroutine.dylib) + 765  [0x7fff6ff2996a]
    +                     1440 -[RTLearnedLocationEngine _trainLocationsOfInterestModelWithError:]  (in libcoreroutine.dylib) + 121  [0x7fff6ff2a1f7]
    +                       1440 -[RTLearnedLocationEngine _relabelWithError:]  (in libcoreroutine.dylib) + 303  [0x7fff6ff2e58e]
    +                         1440 -[RTLearnedLocationEngine _relabelWithRelabeler:relabelerPersister:error:]  (in libcoreroutine.dylib) + 1619  [0x7fff6ff2ec22]
    +                           1440 -[RTLearnedLocationStore enumerateStoredLocationsOfInterestWithOptions:enumerationBlock:]  (in libcoreroutine.dylib) 

I would expect such activity to eventually complete and stop chewing CPU, but you never know!

So just to close this off, it seems like routined has something to do with location tracking. But I don't know why it suddenly started using a lot of CPU.

I had the same issue and installing the combo update https://support.apple.com/kb/DL2030 has solved it for me.


I have been too optimistic about the combo update because after a few days I noticed it didn't actually solved it for me and ended up completely disabling the service. Do the following:

sudo mount -rw /
sudo mv /System/Library/LaunchAgents/com.apple.routined.plist /System/Library/LaunchAgents/com.apple.routined.plist.disabled

Then reboot the system.