1 <!DOCTYPE HTML> 2 3 <!-- 4 about:memory template page 5 --> 6 <html id="t"> 7 <head> 8 <title>About Memory</title> 9 <link rel="stylesheet" href="chrome://memory-redirect/about_memory.css"> 10 <style> 11 body { 12 font-family: Helvetica, sans-serif; 13 } 14 div#header select { 15 font-family: Helvetica, sans-serif; 16 } 17 div.otherbrowsers { 18 font-family: Helvetica, sans-serif; 19 } 20 table.list#browserComparison tr:not([class*='firstRow']) > *:nth-child(1), 21 table.list#browserComparison tr:not([class*='firstRow']) > *:nth-child(6), 22 table.list#browserComparison tr.firstRow th:nth-child(1) { 23 border-right: 1px solid #b5c6de; 24 } 25 table.list#memoryDetails tr:not([class*='firstRow']) > *:nth-child(2), 26 table.list#memoryDetails tr:not([class*='firstRow']) > *:nth-child(7), 27 table.list#memoryDetails tr.firstRow th:nth-child(2) { 28 border-right: 1px solid #b5c6de; 29 } 30 </style> 31 <script src="chrome://resources/js/load_time_data.js"></script> 32 <script src="chrome://memory-redirect/memory.js"></script> 33 <script src="chrome://memory-redirect/strings.js"></script> 34 </head> 35 <body> 36 <div id='header'> 37 <h1> 38 About memory 39 </h1> 40 <p> 41 Measuring memory usage in a multi-process browser 42 </p> 43 </div> 44 45 <div id='content'> 46 <h2> 47 Summary 48 <div class='help'> 49 <div> 50 <p> 51 Summary of memory used by currently active browsers.<p> 52 For Chromium, processes used to to display diagnostics 53 information (such as this "about:memory") are excluded. 54 </p> 55 </div> 56 </div> 57 </h2> 58 59 <table class='list' id='browserComparison'> 60 <colgroup> 61 <col class='name'> 62 <col class='number'> 63 <col class='number'> 64 <col class='number'> 65 <col class='number'> 66 </colgroup> 67 <tr class='firstRow doNotFilter'> 68 <th> 69 </th> 70 <th colspan='4'> 71 Memory 72 <div class='help'> 73 <div> 74 <p> 75 <strong>Memory</strong> 76 </p> 77 <p> 78 <strong>Resident:</strong> 79 Amount of memory that is present in physical RAM. 80 This is the best indicator of browser memory resource usage. 81 </p> 82 <p> 83 <strong>Shared:</strong> 84 Amount of memory that is present in physical RAM and can 85 be shared with another process. 86 </p> 87 <p> 88 <strong>Private:</strong> 89 Amount of memory that is present in physical RAM and can not 90 be shared with another process. 91 </p> 92 <p> 93 <strong>Virtual:</strong> 94 Amount of address space allocated in virtual memory. 95 </p> 96 97 <p> 98 <i>(Note that the memory for this tab is not included in the browser totals.)</i> 99 </p> 100 </div> 101 </div> 102 </th> 103 </tr> 104 <tr class='secondRow doNotFilter'> 105 <th class='name'> 106 Browser 107 </th> 108 <th class='number'> 109 Resident 110 </th> 111 <th class='number'> 112 Shared 113 </th> 114 <th class='number'> 115 Private 116 </th> 117 <th class='number'> 118 Virtual 119 </th> 120 </tr> 121 <tr jsselect="browsers"> 122 <td class='name'> 123 <div> 124 <strong jscontent="name"></strong> <span jscontent="version"></span> 125 </div> 126 </td> 127 <td class='number'> 128 <span class='th' jscontent="formatNumber(ws_shareable)"></span><span class='k'>k</span> 129 </td> 130 <td class='number'> 131 <span class='th' jscontent="formatNumber(ws_shared)"></span><span class='k'>k</span> 132 </td> 133 <td class='number'> 134 <span class='th' jscontent="formatNumber(ws_priv)"></span><span class='k'>k</span> 135 </td> 136 <td class='number'> 137 <span class='th' jscontent="formatNumber(comm_priv)"></span><span class='k'>k</span> 138 </td> 139 </tr> 140 </table> 141 <div class=otherbrowsers jsdisplay="browsers.length == 1"> 142 Note: If other browsers (e.g., Safari, Firefox, Camino) are running, I'll show their memory details here. 143 </div> 144 <div class="otherbrowsers"> 145 (Bug: We seriously overcount our own memory usage: <a href="http://crbug.com/25454">Issue 25454</a>.) 146 </div> 147 148 <br><br><br> 149 150 <h2> 151 Processes 152 <div class='help'> 153 <div> 154 <p> 155 Details of memory usage for each of Chromium's processes. 156 </p> 157 </div> 158 </div> 159 </h2> 160 161 <table class='list' id='memoryDetails'> 162 <colgroup> 163 <col class='pid'> 164 <col class='name'> 165 <col class='number'> 166 <col class='number'> 167 <col class='number'> 168 <col class='number'> 169 </colgroup> 170 <tr class='firstRow doNotFilter'> 171 <th> 172 </th> 173 <th> 174 </th> 175 <th colspan='4'> 176 Memory 177 </th> 178 </tr> 179 <tr class='secondRow doNotFilter'> 180 <th class='pid'> 181 PID 182 </th> 183 <th class='name'> 184 Name 185 </th> 186 <th class='number'> 187 Resident 188 </th> 189 <th class='number'> 190 Shared 191 </th> 192 <th class='number'> 193 Private 194 </th> 195 <th class='number'> 196 Virtual 197 </th> 198 </tr> 199 200 <tr jsselect="browzr_data"> 201 <td class='pid'> 202 <span class='th' jscontent="pid"></span> 203 </td> 204 <td class='name'> 205 <div> 206 Browser 207 </div> 208 </td> 209 <td class='number'> 210 <span class='th' jscontent="formatNumber(ws_shareable)"></span><span class='k'>k</span> 211 </td> 212 <td class='number'> 213 <span class='th' jscontent="formatNumber(ws_shared)"></span><span class='k'>k</span> 214 </td> 215 <td class='number'> 216 <span class='th' jscontent="formatNumber(ws_priv)"></span><span class='k'>k</span> 217 </td> 218 <td class='number'> 219 <span class='th' jscontent="formatNumber(comm_priv)"></span><span class='k'>k</span> 220 </td> 221 </tr> 222 <tr jsselect="child_data"> 223 <td class='pid'> 224 <span class='th' jscontent="pid"></span> 225 </td> 226 <td class='name'> 227 <div jscontent="child_name"></div> 228 <div jsselect="titles"> 229 <span jscontent="$this"></span><br> 230 </div> 231 </td> 232 <td class='number'> 233 <span class='th' jscontent="formatNumber(ws_shareable)"></span><span class='k'>k</span> 234 </td> 235 <td class='number'> 236 <span class='th' jscontent="formatNumber(ws_shared)"></span><span class='k'>k</span> 237 </td> 238 <td class='number'> 239 <span class='th' jscontent="formatNumber(ws_priv)"></span><span class='k'>k</span> 240 </td> 241 <td class='number'> 242 <span class='th' jscontent="formatNumber(comm_priv)"></span><span class='k'>k</span> 243 </td> 244 </tr> 245 246 <tr class='noResults'> 247 <td colspan='99'> 248 No results found. 249 </td> 250 </tr> 251 </table> 252 <div class="otherbrowsers"> 253 (Note: Due to memory sharing between processes, summing memory usage does not give total memory usage.) 254 </div> 255 </div> 256 <script src="chrome://resources/js/jstemplate_compiled.js"></script> 257 </body> 258 </html> 259