Diagnosing a Slow Mac
If your Mac seems to be running slowly, generating a lot of heat, or it sounds like it is about to take off due to high fan speeds, then you should open Activity Monitor and find out why. This is essentially the macOS equivalent of the Windows Task Manager.
You can use Spotlight to open the Activity Monitor: just click Cmd + Space, and then enter “Activity”, and it will be displayed. You can also find it under “Applications”> “Utilities”. If you encounter major problems, you can also pin it to the Dock for quick access.
The reason why the computer is running slowly should be obvious in the “CPU” tab. Simply click on the% CPU column heading to organize running processes based on processor usage. The above shows everything that requires a lot of computing power. When your computer performs various tasks in the background, they move around.
Generally speaking, high CPU usage is a problem that only occurs when you have not anticipated it. When you play games, watch videos in a browser, or edit videos, it is reasonable to expect your computer to consume resources. If a single Safari tag or Mac process exceeds its fair share, this usually means a problem.
Why Is kernel_task the Culprit?
You can terminate most processes by clicking on them and then clicking the X in the upper left corner of the screen. Unfortunately, this is not possible for a specific process: kernel_task. The reason for this is that kernel_task is actually part of macOS.
It is not so much a single process as it is actually a series of processes under a label. As you work, macOS performs various tasks in the background. This includes sending and receiving data over the network, writing and reading data to and from hard drives, and indexing new folders or hard drives for Spotlight searches.
This operation usually uses the large amount of RAM available on the Storage tab, but this is not important. The amount of memory used will increase and decrease as needed. However, high CPU usage can bring your entire system to a halt, and even occasionally cause the entire system to crash.
So, how to prevent kernel_task from affecting the performance of Mac?
Simple Solutions for kernel_task Issues
In many cases, simply restarting your Mac will solve the problem immediately. However, if you experience this problem for a long time, this is not a permanent long-term solution. This is only a short-term solution and should have immediate results.
Any factor that caused a significant increase in CPU usage may return. Therefore, if you have repeated incidents, you should also try to reset your System Management Controller (SMC). This is very simple and can solve all kinds of macOS problems.
The instructions for resetting the SMC vary slightly depending on your Mac model. Since many issues can be fixed, we provide a complete guide on how to reset the Mac SMC. It also includes resetting your PRAM, which is another part of your Mac that can cause multiple problems.
Other Solutions for Fixing kernel_task High CPU Usage
The most obvious solution to operating system-related problems may be to update to the latest version of macOS. Simply launch System Preferences, click Software Update, and run any pending Apple software updates.
Another common reason for the high CPU usage of the kernel_task process is Adobe Flash. Gone are the days when Flash was essential for surfing the Internet, but you may still need it to access specific web applications or websites.
In addition to installing Flash, you can also use a browser that provides Flash, such as Google Chrome (although it is optional). Most likely, you don’t need Flash at all, so you can safely delete it. In addition, since Adobe stopped supporting Flash on December 31, 2020, you will not receive any important security updates.
It is important to delete it-at least for security reasons. To remove Flash, run Adobe Flash Player installation manager and click Uninstall.
Digging a Little Deeper Into Mac’s High kernel_task CPU Usage
Some people have successfully removed kernel extensions, which are code modules that can perform low-level tasks. Also known as “kexts”, most of these extensions are installed by Apple as part of the macOS core environment. Some software installs third-party extensions as drivers or controls hardware.
A quick way to check if a third-party kext is causing kernel_task problems is to restart the computer in safe mode. To do this, restart your computer and hold down the Shift key during startup. Safe mode only loads the necessary kernel extensions. Therefore, if there is no problem in this environment, it means that there is a problem with the third-party kext.
Restart the system and start the terminal as usual. Then run the following command:
This will show what kernel extensions are currently loaded. All Apple extensions will look like:
Meanwhile, third-party drivers will have the developer name in them, like this:
And also like this one:
The best way to remove these is to uninstall the related software. For some applications, this simply means moving the application files to the trash can and entering your administrator password to allow changes.
Others may have PKG uninstall files that you need to run. For the rest, go to “System Preferences” and look for the third-party settings section.
Starting with OS X El Capitan, Apple introduced a new security feature that broke many third-party modifications. System Integrity Protection (SIP for short) prevents applications from injecting code into Apple’s own applications and writing it to certain parts of the drive that Apple considers important to system security.
This leads to better system stability, so this problem should be less common in modern versions of macOS.
Still Have High CPU Usage? What to Do When All Else Fails
The final solution here is a bit risky: delete Apple’s own kernel extension. This is not recommended. However, if you have tried all other methods and Kernel_task still causes high CPU usage, then you may want to try this solution.
Developer and blogger Viktor Petersson has written a lot of articles about kernel_task and the problems it brings. In his case, this is probably caused by an unreliable sound card. Petersson’s first article focused on Mac OS X Yosemite, but later updated macOS.
We have not tested this fix, and we cannot be sure if it works for you. If you are interested in trying it out, you need to do the following:
- Create a backup of your Mac using Time Machine or another backup solution.
- Turn off System Integrity Protection by booting into Recovery mode and running the following command from Terminal:
- Follow Viktor’s method. Start by finding your Mac’s model using the command:
system_profiler -detailLevel mini | grep "Model Identifier:"
- Run the following command:
- Move and back up the file relevant to your model. For example, if your identifier is MacBookPro8,2 you would run:
sudo mv MacBookPro8_2.plist MacBookPro8_2.bak
- Reboot into Recovery mode and enable System Integrity Protection again using the command:
This is also the final solution. Only try if you are having difficulty completing something, because kernel_task will make your Mac unusable. This is not a short-term solution-it will persist even after you reinstall the operating system.
However, you must repeat this process after every major software update or operating system upgrade, because Apple will restore the moved files.
Fixing the Mac kernel_task Bug Problem
Generally speaking, upgrading to a new version of macOS will bring new features and functions, but it will also introduce errors. This is especially true for older hardware models that are beginning to push their limits.
However, if you don’t see a problem with kernel_task on your Mac until after the update, this may be the culprit. Hope one of these tips can help you solve the problem and improve the performance of your Mac.