Chrome’s Nasty GPU Memory Leak, And How To Replicate It

Chrome’s Nasty GPU Memory Leak, And How To Replicate It

A few weeks ago, I wrote about Chrome’s signed distance field setting for fonts and how it seemed to be the cause of a memory blowout in the browser’s GPU process. Unfortunately, the issue was not related to the SDF feature and in fact is a known bug that was introduce a few versions ago.

The bug is detailed on the project page for Chromium and while it’s received some attention, the cause still alludes testers and developers alike. It was believed to have been fixed in more recent versions (including non-stable channels), but after continued investigation the leak is still occurring, just at a slower pace.

If you’re wondering if you’re affected, you can reproduce the leak by following these directions:

I’ve found a situation where Chrome gets over 2GB in memory usage in a few seconds… can you try the following: set chrome window *not* to be maximized, then use the right vertical window border and move that vertical border left-right.

I’ve tried the above instructions and while the memory usage doesn’t spike in seconds, there’s a noticeable increase of a few megabytes every time I perform the resize and those megabytes are never reclaimed.

Closing your browser (or killing the GPU process) is not a big deal, but if you’re a heavy multi-tasker, you might get caught out by an out-of-memory exception when you least expect it. So keep an eye on Chrome’s memory usage and kill processes as needed, or switch to Firefox (or even Internet Explorer) until the bug is fixed.

Issue 403471: GPU process memory usage too high [Google Project Hosting]