Archive for the ‘App Tamer’ Category

App Tamer 2.7.6: New sorting options, UI tweaks and bug fixes

Thursday, January 19th, 2023

Version 2.7.6 of App Tamer is available for download, delivering a bunch of changes. Among them is the option to click on a column header to sort processes by name, CPU usage, or average CPU usage. Prior to this release, the list of running processes was always sorted by average CPU usage – you didn’t have a choice.

I’ve hesitated to add this because I worry that it may cause confusion for some people. If they accidentally click on a column header without realizing it, the list will no longer be showing the most CPU-hungry apps at the top. And they won’t know how to get it back to doing that.

Nevertheless, for those that understand it, sorting by something other than “% Avg” (average CPU usage) is helpful. It’s been a common request for quite a while, so I’m finally relenting – let’s hope my worries are unfounded and it doesn’t cause trouble for anyone.

In addition to this change, App Tamer 2.7.6 also improves its user interface in a number of little ways – everything from making buttons more obvious to smoothing out the animation used when its window opens.

And functionally, there are a couple of important fixes. App Tamer now correctly recognizes all battery-powered Macs. Prior to this release, it actually looked for “Book” in the model identifier of the machine to determine whether it should look for a battery. That was fine when the model identifiers were things like “MacBookAir10,1”, but then Apple released the 2022 MacBook Air with a model ID of “Mac14,2”. Whoops – now my “Book” shortcut looks pretty stupid 🙄.

In addition, the default throttling setting for common web browsers has been changed so that they’re allowed 10% CPU usage when they’re in the background, rather than 2%. This should reduce the possibility that audio or video will stutter when the browser’s not frontmost. If you still get choppy audio, try setting the limit for your browser even higher, or consider turning off “Slow down this app” in your App Tamer settings for it.

There a complete list of all the changes in version 2.7.6 on the App Tamer release page, along with links to download the new version.

More updates for Ventura: App Tamer 2.7.4 and HistoryHound 2.3.3

Friday, July 29th, 2022

As Apple continues to refine macOS 13 Ventura before its official release, I’m getting all of St. Clair Software’s apps up to speed on it. While both App Tamer and HistoryHound worked on the latest public beta versions of Ventura, there were a number of details that needed to be addressed.

Version 2.7.4 of App Tamer understands Ventura’s new security restrictions for Login Items and will ask you to approve its helper application when necessary. This release also fixes a bug in App Tamer’s window handling, and corrects a problem with a checkbox not being enabled in the settings for slowing down an app.

Because someone’s going to ask, the now-correctly-enabled checkbox is the “Also slow this app when it’s in front” feature. Even if you’re familiar with App Tamer, you may not have seen this as it only shows up when you hold down the Option key. As its name implies, this checkbox will slow down an app even when it’s frontmost. That’s usually not something you want to do, as it can make the app harder to use, but there are situations where it does make sense.

HistoryHound 2.3.3 is also available now, adapting its prompts for Full Disk Access permission so they work smoothly on Ventura. This update also adds some features, including support for the Orion web browser and new filters that you can use to narrow down searches of your browser history.

Oh, and to be consistent with Ventura, any references to “Preferences” in both apps now refer to “Settings” when you’re running on Ventura, because that’s what they’re called in the new, modern Mac world. Full details and download links are available on the App Tamer release page and the HistoryHound release page. The updates are free if you’ve already got a license for the app in question.

It’s the little things: App Tamer 2.7.3 fixes icon spacing and kernel_task CPU usage

Tuesday, July 5th, 2022

Version 2.7.3 of App Tamer is now available, fixing a couple of problems.

First, my apologies to folks using versions of macOS older than Big Sur: Changes in the last App Tamer update tightened up the spacing of its menu bar icon to comply with modifications Apple made to Monterey and Big Sur. Unfortunately, it also did that on pre-Big Sur systems, often making its icon too close to adjacent ones in the menu bar. I’ve fixed that in 2.7.3.

Second, internal changes that Apple made in macOS resulted in App Tamer reporting the CPU usage of one particular process – kernel_task – incorrectly. App Tamer would show either zero or astronomical values for kernel_task’s processor use, neither of which was correct. In App Tamer’s defense, the system’s approved public API was supplying those numbers and it dutifully reported them without prejudice. Some hunting around in the macOS source code (thank you Apple for making darwin Open Source!) revealed an alternate method that correctly reports the CPU usage of all processes, including kernel_task. So that fix is now available in App Tamer, making it a reliable source of CPU information for all processes again.

As usual, release notes and download links are on the App Tamer release page, or if you’re already using App Tamer, just choose “Check for Update” from its menu. This update is free if you’ve already purchased an App Tamer 2.x license.

App Tamer 2.7.2 fine tunes its menu bar icon, fixes installation problem

Wednesday, May 11th, 2022

A new release of App Tamer is available for download! Version 2.7.2 incorporates a number of fixes to tighten up the layout of the text in App Tamer’s menu bar icon, and improves its compatibility with Bartender‘s multiple options for the spacing of menu bar icons. It also corrects a bug that could result in App Tamer’s helper app failing to install correctly on some Macs.

And relevant to App Tamer users using M1 Macs: Howard Oakley at The Eclectic Light Company has done his usual thorough benchmarking work and determined that the efficiency cores on Apple’s M1 processors use a shocking 70% less energy than the performance cores when doing the same amount of work (thanks Howard!). Why do we care? Because App Tamer lets you automatically run apps on those efficiency cores when they’re in the background, so can markedly reduce the amount of power used by your M1 Mac!

As usual, this update is free for anyone who already has a license for App Tamer 2.x. Details and download links are on the App Tamer Release Page.

App Tamer 2.7.1 fixes compatibility issues and bugs

Thursday, March 31st, 2022

Version 2.7.1 of App Tamer is now available, addressing a number of issues and also providing localized online help for French-speaking users.

Compatibility has been improved with Bartender and Steam, and a number of user interface problems and window placement issues have been fixed. User interface glitches on older versions of macOS have also been eliminated.

There’s been a lot of interest in App Tamer’s new capability of running apps on the efficiency cores of M1 Macs, including requests to do so even when the app is frontmost. You can do that by holding down the Option key while clicking on an app in App Tamer’s process list – an extra “Also slow this app when it’s in front” checkbox will appear. Just turn on that checkbox (now that version 2.7.1 properly enables it).

Full release notes and download links are on the App Tamer release page.

App Tamer 2.7 is now officially available!

Wednesday, March 2nd, 2022

Version 2.7 of App Tamer is out of beta testing and available for download. Details and download links are on the App Tamer release page.

In case you missed the beta versions and accompanying blog posts, the marquee feature of this release is the ability to run an app on the M1’s efficiency cores instead of on the more power-hungry performance cores when you’re not actively using it. As with the rest of App Tamer’s capabilities, it’s a simple matter of selecting the running app and clicking on a checkbox:

App Tamer 2.7 also augments its interface with additional performance information to let you manage CPU and power consumption intelligently. In addition to showing overall CPU usage, it breaks it down by processor core type, giving separate stats for the M1 performance and efficiency cores. They’re included textually and graphically in App Tamer’s window, and also (optionally) as tiny ‘P’ and ‘E’ values in its menu bar display:

Conserving battery and limiting CPU usage is really as simple as clicking that checkbox, but there’s a lot going on under the hood. This blog post discusses how things operate in more detail.

App Tamer 2.7b2 fine tunes support for Apple Silicon

Thursday, February 24th, 2022

Version 2.7b2, the second public beta release of App Tamer 2.7, is available on the App Tamer Beta Testing page. If you’ve recently downloaded beta 1, just choose “Check for Update” from its utility menu or in the Options tab of App Tamer’s Preferences window to get the new version.

The changes in beta 2 are relatively small, correcting interactions between the new capability of running apps on the M1 processor’s efficiency cores and several existing App Tamer options. In addition, App Tamer’s online help has been brought up to date, and a bug affecting the CPU usage graphs in beta 1 has been fixed. Details and download links are available on the beta testing page.

If you have any feedback or bugs to report on the 2.7 beta releases, please share them in the comments here or by emailing AppTamer@stclairsoft.com. Version 2.7 is on track for release soon, barring any further bug reports or changes.

App Tamer 2.7b1: Advanced support for Apple Silicon processors

Thursday, February 17th, 2022

There’s now a public beta version of App Tamer 2.7 available for download. The big deal in this iteration is support for the Performance and Efficiency cores (or “P and E cores” for short) in Apple’s M-series processors.

P and E core usage statistics

As you can see in the image on the left, App Tamer now displays graphs of P and E core usage as well as overall CPU usage. You’ll get these automatically if you’re running App Tamer on an M1-powered Mac.

Note that P and E stats are shown as a proportion of total CPU power available, so on an M1 Pro processor (8 P cores and 2 E cores), the E core number will max out at 20% (2 cores out of the 10 available), while the P core number will max out at 80%. This may be a little counter-intuitive at first, but it was even more confusing to represent them as a percentage of each core type. In that scenario, “CPU Used by All Apps” could show 50%, with E core usage at 100% and P core usage at 38% – which doesn’t make sense to most normal humans.

Running background apps on E cores

This is the really cool part. When you click on an app in the process list to change its settings, there’s an additional “Run this app on the CPU’s efficiency cores” checkbox, as you can see in the screenshot below.

I explained the basics of this feature in a previous post. It works like App Tamer’s other CPU-saving capabilities in that it’s applied to an app anytime that app is not frontmost. If you turn on the checkbox for Safari, any time that you leave Safari running in the background while you’re using another app, Safari will be switched to the processor’s E cores. This saves power and leaves the P cores free to handle higher priority tasks.

Note that the effects of this feature are similar to App Tamer’s existing “CPU throttling” capability, which is what you get when you turn on the “Slow down this app if it uses more than X%” checkbox. However, there are a couple of advantages:

  • The E cores actually consume less power by design
  • There’s no overhead when running an app on E cores, whereas throttling an app’s CPU usage requires App Tamer to actively manage the app’s execution

So, basically, running an app on the processor’s E cores saves more power than throttling it.

Of course, the two aren’t mutually exclusive – you can run an app on the CPU’s E cores and throttle it while it’s there if it’s still using too much processing power. App Tamer will let you turn on both checkboxes to do this.

What about Intel-powered Macs?

If you’re not using a fancy new M1 or M2 (soon?) powered Mac, you won’t get this new feature. However, that checkbox does still do something. It’s named “Run this app as a low-priority process” on Intel Macs, and it will use the macOS system scheduler to reduce the priority of the app, both in terms of CPU usage and disk and network I/O. This will reduce its impact on other apps and cut its energy usage somewhat, but not nearly as much as it does on M-series Macs.

OK already! Where do I download it?

Go to the App Tamer beta testing page. And if you have suggestions, find a bug, or want to argue with me about how E and P core usage is displayed, send email to AppTamer@stclairsoft.com.

App Tamer experimentation: Running apps on M1 efficiency cores

Friday, January 21st, 2022

So I was reading Howard Oakley’s Eclectic Light Company blog, as I often do (and you should too), and he mentioned the taskpolicy command line app, which I wasn’t aware of before. taskpolicy allows you to demote a process to “background priority,” making it run more slowly by giving it a lower priority for its disk and network access and – key point here – on M1-powered Macs, also runs the process on the M1’s efficiency cores instead of on the performance cores.

That got me thinking… if there’s a command line tool to do this, there must be a system API to make this happen, too. And lo and behold, the setpriority( ) system call will actually perform this neat trick, even though the man page lies and says it won’t.

I made some changes to App Tamer yesterday to add this, and App Tamer now has a new checkbox:

Turn the checkbox on, and whenever an app isn’t frontmost, App Tamer will give that app background priority, reducing its disk and network priority and switching it over to run on an M1 efficiency core. Running a few apps that consume quite a bit of CPU looks like this in Activity Monitor:

In my initial testing, the feature seems to work quite nicely. App Tamer automatically moves apps between the performance and efficiency cores as you switch between apps. So far, I haven’t found any downsides to this – but then again, I just added the feature yesterday and have only done limited testing. It’d be great to actually quantify whether this delivers additional battery life.

If you’d like to give it a try, you can download App Tamer 2.7d1 here. Just unzip it and run it, then click on a cpu-hungry app in App Tamer’s process list and turn on “Run this app on an M1 efficiency core” – that’s it. App Tamer will automatically lower the app’s priority when it isn’t frontmost.

Update: There’s now a beta version of App Tamer 2.7 that includes an almost-finished version of this feature.

Note for users of Intel-based Macs: On your machine, the checkbox is named “Run this app as a low-priority process” because your Mac doesn’t have separate efficiency and performance cores 😢. The app will be demoted to background priority so it uses fewer CPU and I/O resources, but I’m afraid there’s no fancy cpu-juggling involved.

App Tamer 2.6.5: Refinements and Fixes, plus “hide everything”

Thursday, January 20th, 2022

Version 2.6.5 of App Tamer is available, sporting fixes for a few things that have come to my attention since the last release. Specifically, App Tamer’s Force Quit command, which you can get to by Control-clicking on any app in the process list, now ensures that the app is terminated even if it’s being very uncooperative.

Some UI inconsistencies have also been fixed, including small changes to the text color and font size used in App Tamer’s icon in your menu bar. And there’s a fix to App Tamer’s high-cpu-usage-detection warnings so that if some helper process (like one of Safari’s web content renderers) uses lots of CPU, App Tamer tells you to limit Safari’s CPU usage to fix the problem, rather than complaining about the helper process itself.

This release also includes the “inverting” of an existing feature to fill the niche left by the demise of the app Hocus Focus. App Tamer already offered an option to hide particular apps after they’d been idle for a certain amount of time, but if you wanted that to apply to all applications, you had to turn the feature on for every app individually. Now you can set up all apps to be hidden after 5 minutes (or whatever) in one fell swoop by using these commands in Terminal:

  defaults write com.stclairsoft.AppTamer hideWhenIdle 1

  defaults write com.stclairsoft.AppTamer minutesUntilHide 5

The first command turns on the “hideWhenIdle” feature, while the second sets the “minutesUntilHide” time to 5. You can obviously use any delay you want for minutesUntilHide. To turn the feature off again, just set hideWhenIdle to zero:

  defaults write com.stclairsoft.AppTamer hideWhenIdle 0

Also, if you want a few apps to wait longer to hide, you can override the time using App Tamer’s normal hide-when-idle feature, accessible in the settings popover that you get by clicking on an app in the process list. Or to prevent the app from being hidden regardless of how long it’s been idle, enter zero into the edit box next to the slider.

As usual, concise release notes and download links are available on the App Tamer Release page, or if you’re already running App Tamer, by choosing “Check for Update” from utility menu at the bottom of App Tamer’s window.