We’ll start by covering some aspects of Google Chrome architecture and then describe some of the main tools it offers for analyzing and debugging memory.
For the experiments, we used Chrome Canary, version 45.0 in a Mac.
The browser maintains a graph representation of its objects. Each node represents an object and directed arcs represent references. There are three types of nodes:
* Root node (e.g. the window object in the browser)
* Object node
* Scalar nodes (primitive types)
We define shallow size as the amount of memory used by the object itself (not counting the size of references).
The retaining path of a node is a directed path from the root…
View original post 1,453 more words