Home > Wiki Tips

What is IMDPersistenceAgent |Fix IMDPersistenceAgent High CPU Usage

Updated on Tuesday, December 3, 2024

Written by

Jenny Zeng

Approved by

Jessica Shee

English

Summary: This article tells you what IMDPersistenceAgent is and what to do when IMDPersistenceAgent uses high CPU or memory usage on Mac.

When your Mac heats up, makes loud fan noises, or runs slowly, you may want to check Activity Monitor to see what processes are hijacking your Mac's resources. If you notice the process IMDPersistenceAgent taking up high CPU or memory usage, read on to learn what it is and how to stop it from consuming so much CPU or memory.

 

What is IMDPersistenceAgent on Mac?

IMDPersistenceAgent is a background process that's involved with Messages, Contacts, FaceTime, and the Handoff feature on Mac for tasks, such as syncing messages, using your address book to index data, exchanging messages and video call data between Messages & FaceTime and reflecting the details in the Notification Center.

 

How to fix IMDPersistenceAgent high CPU or memory usage on Mac?

When your Mac is syncing contacts or messages from iCloud or other services or performing other tasks that require the IMDPersistenceAgent process, it will consume a lot of CPU accordingly and return to normal when the task is done. However, if IMDPersistenceAgent keeps taking up high CPU, try the following solutions to resolve it.

Quit the IMDPersistenceAgent process

If IMDPersistenceAgent uses an abnormally high amount of your Mac's CPU or memory, it's likely stuck. You can quit it to allow it to restart. After that, it will reappear in Activity Monitor if it's currently needed for a task but likely with less CPU or memory usage. Follow the steps below to refresh it:

  1. Open Finder, and launch Terminal from the Applications > Utilities folder.
  2. Copy and paste the following command and hit Enter.killall imdpersistenceagent

If the issue persists, continue with the other solutions below.

Check logs for potential culprits

Mac's built-in Console app provides crash reports and log messages of the running processes on Mac. It's a good idea to check the Console logs to find the source of your problem.

  1. Open Finder, and open Console from the Applications > Utilities folder.
  2. Select system.log from the left sidebar. 
  3. Look through the logs from the period that you noticed IMDPersistenceAgent consuming high CPU and focus on the app that's repetitively addressed.
  4. Quit the processes that keep showing up in the log messages.

For instance, if Google Chrome frequently appears in the logs, you can quit it and see whether there's an improvement. Or, if you spot the message reading "sharing: Starting Handoff advertising" keeps popping up, try disabling Handoff.

Consolidate all contacts into one account

Having multiple accounts in Contacts may also cause IMDPersistenceAgent to take up CPU or memory usage. Try consolidating all your contacts into a single account and disabling others for contacts.

Ensure you have no unsent messages

Another tip that may be useful is to make sure you don't have unsent messages in the Messages app or don't leave any text in the text box on a Messages thread. Take a look at your Messages app to check it.

Reset NVRAM

If the above solutions don't work, you may find resetting the NVRAM helpful, as it is how some have fixed the IMDPersistenceAgent high CPU issue. NVRAM is the memory your Mac uses to save and rapidly access system settings like sound volume, startup-disk selection, time zone, display resolution, etc.

Note that resetting NVRAM is only necessary for Intel-based Macs and will restore related settings to their default state. For Apple Silicon Macs, try a reboot.

How to reset NVRAM on an Intel-based Mac:

  1. Turn off your Mac.
  2. Turn it on, then immediately press and hold Option + Command + P + R.
  3. Release the keys after 20 seconds, during which you may hear the startup sound or see the Apple log more than once.

Is the IMDPersistenceAgent process back to normal? If you find the solutions in this post helpful, please share them with more people. If you have figured out a different solution, share it in the comment section below to benefit others.