Adjusting VoiceOver CPU Priority

By Bruce Harrell, 18 September, 2022

Forum
macOS and Mac Apps

Hi, eager and excited crowd,

Smile. Does anyone know how to alter VoiceOver or other app CPU priority in MacOS Monterey, i.e., to give an app a higher or lower priority in relation to other MacOS apps when it comes to who's first and who has to wait in line for CPU time?

I vaguely recall someone suggesting altering app CPU priority as a possible solution to the Safari not responding issue we've seen, and I remember following that suggestion and making the change in priority so the CPU would give VoiceOver higher priority. I tried it, but it didn't seem to solve any problems. Today, I'm wondering if some of the unusual issues I've been having on my old iMac Pro and now my new Mac Studio are because I never changed those priorities back to their default settings.

Can anyone tell me how to restore those defaults? I would be much obliged, even if all you can do is point me to where in MacOS I might be able to figure it out myself.

Thank you, one and all! smile

Bruce
?

Options

Comments

By LaBoheme on Tuesday, September 27, 2022 - 07:32

if simply changing the priority for one process can mess up your mac studio, then you have a more profound problem. i thought the mac studio was like a super computer.

the priority always reverts to default value on next launch or boot, unless you did something unusual, like editing the plist file.
try "ps -efl", i bet the ni value for voiceover is 0.

By Chris on Tuesday, September 27, 2022 - 07:32

I've heard this along with many other issues is fixed in Ventura, so perhaps wait to upgrade to that? The Mac Studio is an absolute monster, so any weird hangs are due to software issues.

By Bruce Harrell on Tuesday, September 27, 2022 - 07:32

Thanks Chris. Your news is encouraging, and I hope you're right. Meanwhile, I need to fix the problems I've been experiencing. They are interfering with my work.

By Chris on Tuesday, September 27, 2022 - 07:32

Use the Brave browser. It's an issue with Safari specifically. VoiceOver works fine with Brave on my 2013 MacBook Air running Big Sur. I really hope this finally goes away with Ventura.

By PaulMartz on Tuesday, September 27, 2022 - 07:32

Hey Bruce. Assuming you can get the process ID for VoiceOver (I've been unable to find it - what is the process name?), then you can change the priority with the renice command.

Example:
# sudo renice -1 -p <process_id>

By Bruce Harrell on Tuesday, September 27, 2022 - 07:32

Chris, thanks. I'll give it a try.

Paul, I wish I knew. If you figure it out, please pass along the magical command that will wipe away all our digital difficulties.

By Tyler on Tuesday, September 27, 2022 - 07:32

Member of the AppleVis Editorial Team

Are you able to locate process IDs in the table of processes in Activity Monitor?

By Bruce Harrell on Tuesday, September 27, 2022 - 07:32

I have activity monitor open and looking at the all processes table. Top of the list is Apogee Control, which is the app that presets my audio interface, an Apogee Ensemble. At the moment, the CPU percentage is hovering just above 60%, which means 60% of one core. My Mac Studio has 16 cores.

Below Apogee Control on the all processes list, the next few items are:
coreaudiod34.1
Process Name WindowServer % CPU 23.3
Process Name Core Audio Driver (ApogeeElementEnsemble.driver)% CPU 21.0
Process Name Element Helper% CPU 19.1
kernel_task% CPU 17.4
VoiceOver% CPU 9.9
and the list goes on

Suggestions?

By Tyler on Tuesday, September 27, 2022 - 07:32

Member of the AppleVis Editorial Team

If process IDs aren't shown in the table, you should be able to reveal them in Activity Monitor by choosing View > Columns > Process ID.

HTH

By Bruce Harrell on Tuesday, September 27, 2022 - 07:32

I assume you are suggesting more than simply changing the view. I eagerly await your next missiv e.

By Laura Tosetto on Tuesday, September 27, 2022 - 07:32

I've never tried to change CPU priority, but I assume your next step is to use that command Paul suggested in a previous comment. Find out the process ID for VoiceOver and include it in the command.
For example, the process ID for VoiceOver on my system is 64638. I'm assuming that putting # sudo renice -1 -p <64638> into a terminal window would reverse the priority back to -1 (or just replace -1 with whatever priority you want VoiceOver to be).
To give you step by step instructions, that would be:
- open the Utility folder on your Mac and open the terminal app (or type "terminal" into SpotLight, or ask Siri to open Terminal);
- type "# sudo renice -1 -p <64638>" (or whatever your ID for the process called VoiceOver is; also I'm not sure if you have to include the greater-than and lesser-than symbols in there; also, don't include the quotes that I put);
- press enter. The system will probably ask for your password;
- if it does, input the password you use for unlocking your Mac and press enter again.
If I'm right, this will set VoiceOver's priority to -1 or whichever value you provided in the command.
Hope this helps!

By Bruce Harrell on Tuesday, September 27, 2022 - 07:32

I really appreciate all the helpful responses I've received here. Between Paul, Tyler, and Laura, I'm close to giving it a try. My hesitation comes from having heard I can really mess up my computer if I use terminal without either using exactly the correct command line on terminal and/or without knowing exactly what I'm doing inside terminal. Unfortunately, I definitely don't know what I'm doing, and I don't have the precise command line to enter into terminal, so I'm still stuck, alas. When I changed cpu priority originally, someone had provided me with the precise command line to type inside terminal. Unfortunately for me, I think using that command line ended up causing more problems than it solved.

Thank you all for trying,

Bruce

By PaulMartz on Tuesday, September 27, 2022 - 07:32

I decided to give this a shot. I'm not a fan of the process monitor application, so I went to the Terminal and found the process ID with the following command:

ps -ax | grep VoiceOver

The first number displayed in the output is the process iD. In my case, 47900. With the process ID in hand, I issued the following command:

sudo renice -1 -p 47900

It prompts for password, but otherwise says nothing. I can verify it worked with another ps command, this one rigged to show the nice value.

ps -ax -o pid -o nice -o comm | grep VoiceOver

That will display the process ID, the nice value, and The command name, all on one line. As I would expect, the second number is -1.

The result? My system, a Mac Mini, seems to be running fine. I've tried nice values of both -1 and -2. I've noticed no changes, neither positive nor negative. If I hit Command+F5 twice to stop and restart VoiceOver, that resets the nice value back to the default 0. It also kills the VoiceOver process and relaunches it, which changes the process ID, so keep that in mind. Restarting the computer has the same effect.

I'll keep running with VoiceOver nice value set to -2 for a while and let you know if anything unusual happens.