Speed Up Time Machine by Removing Low Process Priority Throttling
It’s well known that all Mac users should set up Time Machine to automate backups of their computer, and while most Mac users let OS X go about backing up to Time Machine at it’s own pace, which sometimes borderlines on glacial, some users may wish to speed the backup process up a bit. With the help of the command line you can do just that and dramatically speed up the Time Machine backup process, but there are some major caveats to this trick because it applies beyond Time Machine, making it appropriate for advanced Mac users only, and used on a limited basis.
First, understand that Time Machine is meant to run in the background automatically, and to not be a total nuisance it runs at a reduced priority so that it doesn’t consume all available system resources to get the job done. This makes the Mac usable while Time Machine is backing up, but it has the downside of making Time Machine taking longer than it theoretically could. The way this trick works is by removing that reduced priority, but, the caveat with this approach is that it impacts more than simply Time Machine, it removes the low priority throttle from anything at the kernel level. Thus, this is why it’s only recommended for advanced users, and for limited use cases, because you could easily find yourself with all sorts of tasks taking up inordinately high CPU as a result. This is why this is not really a recommended approach, and no, this is not intended to be a solution for when a Time Machine backup is going slower than it should, which typically requires minimal troubleshooting to resolve.
Don’t mind the caveat and potential issues with adjusting processor priority? Then launch Terminal app found in /Applications/Utilities/ and run the following command:
sudo sysctl debug.lowpri_throttle_enabled=0
Using sudo requires the admin password as usual, once entered the effect is immediate. You can either let a backup begin on it’s own, or manually start one yourself.
If you run this command and check the time remaining on a backup you’ll notice the number remaining should speed up considerably, but CPU use goes way up for the backup daemon and Mac performance takes a hit.
The change can be reversed with a reboot, or by issuing the following command syntax in the terminal:
sudo sysctl debug.lowpri_throttle_enabled=1
If you like the general idea behind this and don’t mind taxing CPU to complete backups with Time Machine, a better approach would be to target Time Machine and backupd directly, you can adjust an apps CPU priority specifically with an app like renice or if you’re savvy in the command line, directly with the nice and renice commands themselves. We’ll cover the renice command separately in a separate article, but in preliminary testing it certainly works to achieve the same objective, but on a limited basis to Time Machine processes.
Remember, this is not a solution to slow Time Machine backups in general, which can be fixed through troubleshooting methods.
Thanks to MacKungFu for the uncovering this interesting trick. And if you really love this idea and want to have it enable itself automatically after a reboot, you can drop this plist file into /Library/LaunchDaemons and load it with launchctl, but we do not recommend doing that.
Worked fine! Thank you
A better solution is Time Machine Editor. It offers a variety of ways to control backups: intervals, calendar intervals, or when inactive. It offers great flexibility & control without poking around in Terminal.
This worked fine for me. Thanks! I’m on OS El Capitan 10.11.
Thank you so much.
Is their also an simular working command for 10.9.5 & 10.8.5?
For 10.11.6 it works fine
Forget Time Machine, bloated overkill backup solution. Cloning using SuperDuper or CarbonCopyCloner and use of the Save As commands is a far better, faster and simpler solution.
What a dumb comment. Time Machine is one of the most elegant backup solutions ever offered — and I say that as someone who has been backing up computers since the 8-bit Z80 days. WTF good does a three week old CCC or SuperDuper disk clone do when you’ve corrupted a file you’ve been working on for the last two weeks?
I use Time Machine to backup an iMac Pro with 5TB of storage. I alternate between two NASs, a 5x2TB RAID5 and an 8x3TB RAID6. I just got a USB 3.0 8TB drive for local, non-networked backups.
You and I both know if our primary drives were trashed right now, I’d recover fine and you’d be completely hosed because you don’t actually back up nearly as often as you’d like us all to believe.
renice/nice is also nice as needed
I don’t see why anyone would, really, find this to be necessary. Hourly backups should be quick and painless for most folks. How much data do you, realistically, change in an hour? Sometimes Time Machine DOES take longer to backup for one reason or another. But, because it is low-impact on system resources, I hardly even notice, most of the time.
Anyone working on large Photoshop files finds hourly backups a serious pain in the rear. It’s not uncommon to change 5 gigs or more of data. Same with video editing. Sure, you can tell TimeMachine not to back up those folders, but that sort of defeats the point. A much better solution is to do as SteveG mentioned and use a Time Machine editor to have it back up less often – or as I do, set up a cron job to have Time Machine run once a day in the middle of the night. I’m not sure why Apple doesn’t allow you better control over the backup frequency. It can really affect older (slower) machines with less memory.
Never even thought about this, thanks for the info.
I use Time Machine Editor set to back up to Time Machine twice a day only at times that I am unlikely to be using computer.
Does this also speed up time machine backups via wifi to airport extreme?
This is like flooring your car to roll down the window faster. Not a good idea.
This is a bad idea, it impacts all system processes. It will make your Mac misbehave. Unless you want to rush through a backup and then turn it off, don’t leave this enabled all the time.
The idea from Stack Overflow is a bad idea too.
at *its own pace
Bob I think the rest of your comment got cut off
I suggest El Capitan advice is better, use renice or nice or don’t use it at all.
Using “renice” is a better solution:
renice -n -10 -p (pid)
with # being priority, pid being process ID for backupd
May need to use sudo to renice backupd of Time Machine:
sudo renice -20 -p PID