Improve Session Restore responsiveness in Google Chrome
Google’s Chrome web browser loads all tabs on start if session restore is enabled. Chrome users who run the browser with a small number of tabs won’t notice any issues in that regard, but users who open several dozens or even hundreds of tabs will notice that session restore slows down the start of the browser.
Users may experience performance issue while tabs are restored. The Chrome extension Native Lazy Tabsoffered a solution to this by only loading the active tab on session restart. Google pulled the extension from the Store and while it is still available, the fact that it is not available on the Chrome Web Store means that it is ignored by the majority of Chrome users and even those who experience performance issues during browser start.
Google Chrome includes two experimental flags that users may set to enabled to improve session restore and performance.
- Infinite Session Restore — Reduces the number of tabs being loaded simultaneously during session restore, to improve responsiveness of the foreground tab.
- Page Almost Idle — Make session restore use a definition of loading that waits for CPU and network quiescence.
The two flags are available on all desktop versions of Chrome — Windows, Mac and Linux, and Chrome OS. All you need to do is set both flags to enabled and restart Google Chrome to benefit from the functionality; here is how that is done in detail:
- Load chrome://flags/#infinite-session-restore in the Chrome address bar to display the firsts flag in the browser.
- Use the menu on the right to set it to Enabled. Ignore the Restart prompt for now.
- Load chrome://flags/#page-almost-idle in the Chrome address bar.
- Use the menu on the right to set it to Enabled as well.
- Restart the Google Chrome browser.
You may notice afterward that Chrome’s startup performance has improved; the browser may not hang or freeze anymore at start, or may feel like it is lagging. Mileage varies as it depends on a number of factors; feel free to post a comment below to let me know how this worked out on your end.
Chrome will load all tabs that were open in the last session on start but it won’t do that all at once anymore.
A core difference to Native Lazy Tabs is that Chrome’s internal function will load all tabs eventually while the extension won’t. Tabs get loaded when you switch to them in Chrome when you use the extension but not automatically when enough resources are available to warrant it.
Now You: How is your browser’s startup performance?