Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Susurs

macrumors 68000
Original poster
Jun 18, 2010
1,609
11,017
Hi!
Is there any GUI / app which can be used to set process priority for apps in macOS Catalina, instead of using terminal?

I found an app called - CPUSetter. https://www.whatroute.net/cpusetter.html#overview

However, it seems that it was updated quite a long time ago in 2018 (?). Can’t test it with Catalina for now as I am on iOS for a few days.

Also, I found that the description of the CPUSetter says it can make any app frontmost. Any idea on what ‘frontmost’ mean, and can it be done in terminal?

 
"Frontmost" means at least one of the app's windows is frontmost, i.e. in focus and receiving keyboard and mouse input. It also means that the app's menubar is active.

Here's an example of a command that tells Finder to become frontmost:
Code:
osascript -e 'tell app "Finder" to activate'
All quotes are required, exactly as shown.

I don't know if Catalina has the 'osascript' command installed by default. If you get a response in your Terminal window like "osascript: command not found", then try this:
Code:
which osascript
If the cmd isn't present, then nothing will be output. If it's present, the path to it will be shown.

If it's missing, you can probably find it in the Command-line Tools download for developers. I'm pretty sure that's still available as a download separate from Xcode, but I haven't checked recently.


Oh, and I almost forgot:
You could make an app in Automator that lets you adjust a process's priority. You'd need a list to present processes to select, then either radio buttons or a multi-state control to change the 'nice' level.
 
  • Like
Reactions: Susurs
Thank you a lot for the excellent explanation!

Turns out that the CPUSetter should work with Catalina after all. I will test it when I get to my mac.

Is there any other method besides setting process priority in macOS which could help a specific app to use available computer resources more efficiently? I understand that you cannot choose / set No. of CPU cores available for an app (affinity).

Is something similar to process priority (CPU) available for prioritizing a GPU usage for a specific app, process?

The reason behind this all is that I am trying to push max performance out of my dual display setting where one of the displays is wireless (Luna).

The CPU in the mac is 6 core i7 8th gen which has quite enough power (Not sure if the app is using all it can get from the CPU though). There is plenty of ram available as well (32GB). I am pretty sure that HD 630 with 1.5GB of shared VRAM is not up to par with other components in this macine, however the setup runs pretty well. Just a few not really noticeable micro stutters on wireless side while scrolling in LR and Safari (connection is not to be blamed for this for sure). Smooze app helped to some extent to minimize scrolling issues as well.

I just want to further ‘optimise’ the wireless display part / usage with OS tweaks, especially scrolling and basic OS animation, as much as I can. Therefore, if anyone could think of any methods and let me know - that would be great.

P.S. As far as I understand from Intel spec sheets the integrated GPU is not limited to 1.5GB by Intel - it is software / FW locked. And while I understand that with 8GB of RAM the system cannot really share much more to the GPU, I do not really get why Apple is not allowing at least a bit more VRAM with 16, 32 or 64GB. Strange configuration choice as well. I believe they should have offered at least something like Intel 655 on the GPU side with more powerful CPUs. Maybe there were no options from Intel at that time as most of the lineup come with 630 (Except mobile and G chips with Radeon). eGPU is not really an option for me as well.
 
Is there any other method besides setting process priority in macOS which could help a specific app to use available computer resources more efficiently? I understand that you cannot choose / set No. of CPU cores available for an app (affinity).
Not that I know of.

Is something similar to process priority (CPU) available for prioritizing a GPU usage for a specific app, process?
I don't know of anything.

The reason behind this all is that I am trying to push max performance out of my dual display setting where one of the displays is wireless (Luna).
The performance may be limited by the wireless bandwidth, as much or more than it's limited by CPU or GPU.

I did a quick search, and Luna's wireless appears to be wifi. That means it follows all the rules for the wifi protocols. It also means that it suffers all the problems associated with wifi, such as channel crowding, interference, etc. The 5GHz wifi band has more bandwidth available per channel, but it's also more limited in distance. I don't know if Luna can use 5GHz or not; I didn't dig into it that far.
 
Thank you!
Luna can use wired connection via USB-C as well. It can use 5Ghz also. I have tested different configuration options (including wired and direct mac to iPad network), and also compared it to the behaviour on my other mac - MacBook pro with HD 655 and weaker CPU, where Luna behaves a bit differently.

Taking note that all the methods - wired, 5Ghz, direct network excluding router (tested @ different Mbps) produce the same result, I have concluded that connection is not related to this.

Also, as I mentioned previously, the experience which I am trying to ‘improve’ is already working good (after some initial adjustments / testing optional usage settings), and the computer performs pretty well. I’d call it more like trying to push the max performance out of it now. And adapting it to my specific user needs to get best experience.

I’d definitely say that this is a great option for wireless display and the company behind it did really excellent work.

I believe I could use iPad 12.9’ as the main screen for what I do after trying it out for some time. 11’ is a bit too small for me.
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.