Morten Just, creator of lightweight alternative web browsing solution Flotato, recently published a blog post showcasing the results of tests he ran that revealed Safari uses 10X less RAM than famed RAM-hog Google Chrome on macOS Big Sur (via MacRumors).
Just first performed a low-load test with just Twitter and GMail open on each browser in a virtual machine running the latest iteration of macOS Big Sur, and found that Chrome used 1GB of RAM on a typical web-browsing load, whereas Safari only used 80MB.
Next, Just performed a stress test on both browsers by opening a total of 54 tabs on each, not on a virtual machine but on his 2019 16-inch MacBook Pro with 32GB of RAM. The results revealed that, on average, Chrome used 24X more RAM and CPU per tab compared to Safari on a high web-browsing load.
Chrome used a preposterous 290MB of RAM per open tab, while Safari only used 12MB of RAM per open tab.
Even though Chrome is infamous for being a glutton for RAM, these results are shockingly imbalanced. According to Just, it is possible that “Chrome is going out of its way to manage its memory usage across tabs, keeping the current tab fast and responsive”.
The comment reads:
This post is unfortunately nonsense, because it’s making a fundamental measurement error: not including renderer processes for Safari, and only measuring the browser process (which should be expected to be roughly O(1) memory in the number of tabs).
To the author’s credit, they are trying to include child processes – I’m not sure why, but ‘psrecord’ seems to not (in local testing) include child processes for Safari even when the “–include-children” flag is passed. I guess it does for Chrome, for whatever reason.
It is not yet known how the same match-up performs under the same loads on Apple Silicon running macOS Big Sur.