If you're viewing a webpage that has the endless scroll of content, I've found that when you scroll for a while the RAM usage in Chrome goes up and up and up. Facebook is a good example of this. I would have thought that if you delete the content that has loaded, Chrome could free up RAM, but it doesn't seem to work that way. I even used dev-tools to delete the entire html of the page leaving a blank page, and Chrome still has the same RAM usage. I loaded content until the usage of the page was 1.2gigs and then deleted all the html, with no drop in RAM usage. I'm using Chrome's task manager to measure the ram usage of the individual page, not Chrome's overall usage.
Related to my testing, I blocked all images and videos from loading so it's not images in cache clogging up the RAM. With the blocking I was able to load a very long page that used 7.2Gigs of ram before crashing Chrome. The computer had over 50gigs of available ram left, so it didn't run out. What doesn't make a whole lot of sense to me is that the combined total of the resources loaded by the page was only 221megs according to the network tab of dev-tools.
I'm trying to understand what else I have to do so that Chrome will free up memory so I can continue scrolling down the page. I have tried the manual trash can icon in dev-tools with no effect. Refreshing isn't an option since you'd start back at the beginning of the page.
So some actual questions:
If I delete all the content on the page, how are there any links to the objects to keep them alive when garbage collection starts?
What does Chrome store in memory when new content is loaded that bloats the RAM usage more than the actual size of the data that was loaded and the object additions to the DOM Tree?
Is there a way to manually see and release objects chrome has in memory?
Is there a Javascript script I could run that would show anything useful?
I'm grasping at straws here, but any advise would be appreciated. Thank you.