I recently upgraded from a MacBook Pro 2011 to a MacBook Air 2018 (dual core i5). I have an online class that I take in Adobe Connect (browser, not the app) which uses Flash. According to Activity Monitor, Flash is consistently using >100% of my CPU and overheating my computer. This never happened on my old MacBook Pro. Any suggestions on how to limit this CPU usage?
(macOS 10.14.4, Flash Player 22.214.171.124)
What exactly do you see in Activity Monitor?
Flash Player is a language runtime. Other people write software in ActionScript, which they compile to bytecode, which we interpret and do all of the low-level processing stuff for -- like allocating and tracking memory, rendering pixels to the screen, etc. Flash isn't a video player or conferencing software, although you can write those things using Flash technology. Like any language, it's possible to write code that uses lots of resources, and there isn't a generic way to prevent software from being written inefficiently, or from using the available system resources.
Your computer has fans designed to keep the CPU cool when it's operating at capacity. It's annoying when they come on because they're loud, but that's what they're there for. Flash isn't "overheating" the CPU. It's using the available CPU resources, and the computer decides that active thermal management is required at some point.
Anyway, the really important question is "Why isn't Flash able to offload some of this work to the GPU?". Ideally, we'd ask the GPU to decode video using the dedicated graphics hardware. When that's not available -- either because the video isn't encoded in a way that would allow us to leverage hardware, or because those resources are unavailable (they're in-use, they're disabled in the browser, etc.), then we're going to fall back to software-based decoding, which puts a load on the CPU.
There's no magic knob to turn to make video decoding more efficient in software. That stuff is industry-standard (we license the video codecs on your behalf), and have been tuned for maximal performance. The way that you get performance and power/thermal efficiency beyond that is to use the dedicated video processing silicon on the GPU.
A couple suggestions:
- Make sure hardware acceleration is enabled in Flash (it's on by default) and in your browser (also on by default)
- Experiment with the available browsers, and make sure you're up-to-date on OS and browser patches
- See if installing the Adobe Connect plug-in helps.
Your content should play in the Connect Add-In instead of Flash at that point. Adobe Connect Downloads and Updates
- Reboot, if you haven't recently, and make sure that the connect session is the only application and tab running.
(The thought here is that you're making sure the GPU isn't in a weird state, and you're not fighting any other running applications for access to it -- it has a finite set of resources, and if we can't get access to it, we'll fail back to software).
Anyway, it's pretty weird that this wasn't a problem with your older laptop, but Connect definitely does fire up the fans on my Macbook from time to time. It's really dependent on how that course content is published and put together. Connect has been around a long time, and like Flash, just because hardware acceleration is available, doesn't mean that the content is taking advantage of it (or that it was an available option when the content was created).
Thank you so much for the answer. I have done everything you've suggested already (besides asking the school). I know someone with a higher end MacBook Pro and they have the same issue, but when I try my class on a PC, Connect only takes up ~2% of the CPU, so I'm thinking this is some bug with Flash + Apple? I've contacted support and they're working with the engineering team at this point...
Yeah, that sounds like the PC is using the GPU. I'd expect to see CPU < 10% if you're offloading video. One of the nice things about mac is that the GPU choices are relatively constrained (at least in comparison to PC), and they generally work well. There's one specific, really old Macbook that had a terrible GPU driver, and that's the only one that we've explicitly blacklisted, and it's specific to an intersection of model and OS version, and it's like a 2010 model. (I used to know it off the top of my head, because it caused a lot of grief at the time, but it's been a while...)
I'm definitely interested in how this shakes out. My guess is that it's related to how the video is encoded (silicon is less flexible than software, and the H.264 spec is massive), and there's probably something you could tweak to get the video running in hardware on Mac. If you're talking to Connect engineering, they're in the best position to help with that, and they know the Flash codebase.
Okay -- thank you for the information!
Just an update - still working with engineering, no luck yet with Flash. They had me try the HTML client for Adobe Connect, but it isn't fully functional even though the CPU usage is way less.
OK, so Adobe Support supplied me with a temporary solution (because Macs won't support 32-bit apps in the future) until the HTML client is fully functional. Download the 32-bit version of the Adobe Connect app: http://download.adobe.com/pub/connect/updaters/meeting/9_7/AdobeConnect_985.57.dmg
Cool, at least you have a workaround!
Did they reference a bug number, or that it was a known-issue that will be addressed later? I'd like to follow up on the underlying technical issue that makes this 64-bit specific.
No - these were the instructions they sent me:
Interesting. I'll ask around. Thanks.
They just got back to me - the bug number is CONN-4112378.
I'm running into the same problem. The workaround doesn't do the trick for me. I'm using a 2020 Macbook Air. It just won't start the 32bit version installer.
Do you know if there is any update on the bug?