<!DOCTYPE HTML> <!-- about:memory template page --> <html id="t"> <head> <title>About Memory</title> <include src="content_security_policy.html"/> <link rel="stylesheet" href="shared/css/about_memory.css"> <style> body { font-family: Helvetica, sans-serif; } div#header select { font-family: Helvetica, sans-serif; } div.viewOptions input { font-family: Helvetica, sans-serif; } div.otherbrowsers { font-family: Helvetica, sans-serif; } table.list#browserComparison tr:not([class*='firstRow']) > *:nth-child(1), table.list#browserComparison tr:not([class*='firstRow']) > *:nth-child(6), table.list#browserComparison tr.firstRow th:nth-child(1) { border-right: 1px solid #b5c6de; } table.list#memoryDetails tr:not([class*='firstRow']) > *:nth-child(2), table.list#memoryDetails tr:not([class*='firstRow']) > *:nth-child(7), table.list#memoryDetails tr.firstRow th:nth-child(2) { border-right: 1px solid #b5c6de; } </style> <script src="chrome://memory-redirect/memory.js"></script> <script src="chrome://memory-redirect/strings.js"></script> </head> <body> <div id='header'> <h1> About memory </h1> <p> Measuring memory usage in a multi-process browser </p> </div> <div id='content'> <h2> Summary <div class='help'> <div> <p> Summary of memory used by currently active browsers.<p> For Chromium, processes used to to display diagnostics information (such as this "about:memory") are excluded. </p> </div> </div> </h2> <table class='list' id='browserComparison'> <colgroup> <col class='name' /> <col class='number' /> <col class='number' /> <col class='number' /> <col class='number' /> </colgroup> <tr class='firstRow doNotFilter'> <th> </th> <th colspan='4'> Memory <div class='help'> <div> <p> <strong>Memory</strong> </p> <p> <strong>Resident:</strong> Amount of memory that is present in physical RAM. This is the best indicator of browser memory resource usage. </p> <p> <strong>Shared:</strong> Amount of memory that is present in physical RAM and can be shared with another process. </p> <p> <strong>Private:</strong> Amount of memory that is present in physical RAM and can not be shared with another process. </p> <p> <strong>Virtual:</strong> Amount of address space allocated in virtual memory. </p> <p> <i>(Note that the memory for this tab is not included in the browser totals.)</i> </p> </div> </div> </th> </tr> <tr class='secondRow doNotFilter'> <th class='name'> Browser </th> <th class='number'> Resident </th> <th class='number'> Shared </th> <th class='number'> Private </th> <th class='number'> Virtual </th> </tr> <tr jsselect="browsers"> <td class='name'> <div> <strong jscontent="name"></strong> <span jscontent="version"></span> </div> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_shareable)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_shared)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_priv)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(comm_priv)"></span><span class='k'>k</span> </td> </tr> </table> <div class=otherbrowsers jsdisplay="browsers.length == 1"> Note: If other browsers (e.g., Safari, Firefox, Camino) are running, I'll show their memory details here. </div> <div class="otherbrowsers"> (Bug: We seriously overcount our own memory usage: <a href="http://crbug.com/25454">Issue 25454</a>.) </div> <br /><br /><br /> <h2> Processes <div class='help'> <div> <p> Details of memory usage for each of Chromium's processes. </p> </div> </div> </h2> <table class='list' id='memoryDetails'> <colgroup> <col class='pid' /> <col class='name' /> <col class='number' /> <col class='number' /> <col class='number' /> <col class='number' /> </colgroup> <tr class='firstRow doNotFilter'> <th> </th> <th> </th> <th colspan='4'> Memory </th> </tr> <tr class='secondRow doNotFilter'> <th class='pid'> PID </th> <th class='name'> Name </th> <th class='number'> Resident </th> <th class='number'> Shared </th> <th class='number'> Private </th> <th class='number'> Virtual </th> </tr> <tr jsselect="browzr_data"> <td class='pid'> <span class='th' jscontent="pid"></span> </td> <td class='name'> <div> Browser </div> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_shareable)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_shared)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_priv)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(comm_priv)"></span><span class='k'>k</span> </td> </tr> <tr jsselect="child_data"> <td class='pid'> <span class='th' jscontent="pid"></span> </td> <td class='name'> <div jscontent="child_name"></div> <div jsselect="titles"> <span jscontent="$this"></span><br> </div> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_shareable)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_shared)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(ws_priv)"></span><span class='k'>k</span> </td> <td class='number'> <span class='th' jscontent="formatNumber(comm_priv)"></span><span class='k'>k</span> </td> </tr> <tr class='noResults'> <td colspan='99'> No results found. </td> </tr> </table> <div class="otherbrowsers"> (Note: Due to memory sharing between processes, summing memory usage does not give total memory usage.) </div> </div> <script src="chrome://resources/js/jstemplate_compiled.js"></script> </body> </html>