Extract code handling PrinterProviderAPI from PrintPreviewHandler
[chromium-blink-merge.git] / chrome / browser / resources / about_memory.html
blob46362327131117726e6d178adf1a69958a70ac6c
1 <!doctype html>
3 <!--
4 about:memory template page
5 -->
6 <html id="t">
7 <head>
8 <meta charset="utf-8">
9 <title>About Memory</title>
10 <link rel="stylesheet" href="chrome://resources/css/text_defaults.css">
11 <link rel="stylesheet" href="chrome://memory-redirect/about_memory.css">
12 <style>
14 table.list#browserComparison tr:not([class*='firstRow']) > *:nth-child(1),
15 table.list#browserComparison tr:not([class*='firstRow']) > *:nth-child(4),
16 table.list#browserComparison tr.firstRow th:nth-child(1),
17 table.list#browserComparison tr.firstRow th:nth-child(2) {
18 border-right: 1px solid #b5c6de;
20 table.list#memoryDetails tr:not([class*='firstRow']) > *:nth-child(2),
21 table.list#memoryDetails tr:not([class*='firstRow']) > *:nth-child(5),
22 table.list#memoryDetails tr.firstRow th:nth-child(2),
23 table.list#memoryDetails tr.firstRow th:nth-child(3) {
24 border-right: 1px solid #b5c6de;
26 </style>
27 <script src="chrome://resources/js/load_time_data.js"></script>
28 <script src="chrome://memory-redirect/memory.js"></script>
29 <script src="chrome://memory-redirect/strings.js"></script>
30 </head>
31 <body>
32 <div id="header">
33 <h1>
34 About memory
35 </h1>
36 <p>
37 Measuring memory usage in a multi-process browser
38 </p>
39 </div>
41 <div id="content">
42 <h2>
43 Summary
44 <div class="help">
45 <div>
46 <p>
47 Summary of memory used by currently active browsers. For browsers
48 which use multiple processes, memory reflects aggregate memory
49 used across all browser processes.
50 </p>
51 <p>
52 For <span jscontent="current_browser_name"></span>, processes used
53 to to display diagnostics information (such as this
54 "about:memory") are excluded.
55 </p>
56 </div>
57 </div>
58 </h2>
60 <table class="list" id="browserComparison">
61 <colgroup>
62 <col class="name">
63 <col class="number">
64 <col class="number">
65 <col class="number">
66 <col class="number">
67 <col class="number">
68 </colgroup>
69 <tr class="firstRow doNotFilter">
70 <th>
71 </th>
72 <th colspan="3">
73 Memory
74 <div class="help">
75 <div>
76 <p>
77 <strong>Memory</strong>
78 </p>
79 <p>
80 <strong>Private:</strong>
81 Resident memory size that is not shared with any other
82 process. This is the best indicator of browser memory
83 resource usage.
84 </p>
85 <p>
86 <strong>Shared:</strong>
87 Resident memory size that is currently shared with 2 or more
88 processes. Note: For browsers using multiple processes, if we
89 simply added the shared memory of each individual process,
90 this value would be inflated. Therefore, this value is
91 computed as an approximate value for shared memory in each of
92 the browser's processes. Note also that shared memory varies
93 depending on what other processes are running on the system,
94 and may be difficult to measure reproducibly.
95 </p>
96 <p>
97 <strong>Total:</strong>
98 The sum of the private + shared resident memory sizes.
99 </p>
100 </div>
101 </div>
102 </th>
103 <th colspan="2">
104 Virtual memory
105 <div class="help">
106 <div>
108 <strong>Virtual memory</strong>
109 </p>
111 <strong>Private:</strong>
112 The resident and paged bytes committed for use by only this
113 process.
114 </p>
116 <strong>Mapped:</strong>
117 Total bytes allocated by this process that are mapped into the
118 view of a section, backed by either system pagefile or file
119 system. This is primarily memory-mapped files.
120 </p>
121 </div>
122 </div>
123 </th>
124 </tr>
125 <tr class="secondRow doNotFilter">
126 <th class="name">
127 Browser
128 </th>
129 <th class="name">
130 Private
131 </th>
132 <th class="number">
133 Shared
134 </th>
135 <th class="number">
136 Total
137 </th>
138 <th class="number">
139 Private
140 </th>
141 <th class="number">
142 Mapped
143 </th>
144 </tr>
145 <tr jsselect="browsers">
146 <td class="name">
147 <div>
148 <strong jscontent="name"></strong>
149 <span jscontent="version"></span>
150 </div>
151 </td>
152 <td class="number">
153 <span class="th"
154 jscontent="formatNumber(ws_priv + ws_shareable - ws_shared)">
155 </span><span class="k">k</span>
156 </td>
157 <td class="number">
158 <span class="th" jscontent="formatNumber(ws_shared / processes)">
159 </span><span class="k">k</span>
160 </td>
161 <td class="number">
162 <span class="th"
163 jscontent="formatNumber(ws_priv + ws_shareable - ws_shared +
164 (ws_shared / processes))"></span><span class="k">k</span>
165 </td>
166 <td class="number">
167 <span class="th" jscontent="formatNumber(comm_priv)"></span>
168 <span class="k">k</span>
169 </td>
170 <td class="number">
171 <span class="th" jscontent="formatNumber(comm_map)"></span>
172 <span class="k">k</span>
173 </td>
174 </tr>
175 </table>
176 <div class="otherbrowsers" jsdisplay="browsers.length == 1">
177 Note: This page will show memory use for all running browsers,
178 not just Chrome.
179 </div>
180 <div class="otherbrowsers" jsdisplay="browsers.length > 1">
181 Note: Chrome includes memory used by plug-ins, other browsers may not.
182 </div>
184 <br><br><br>
186 <h2>
187 Processes
188 <div class="help">
189 <div>
191 Details of memory usage for each of
192 <span jscontent="current_browser_name"></span>'s processes.
193 </p>
194 </div>
195 </div>
196 </h2>
198 <table class="list" id="memoryDetails">
199 <colgroup>
200 <col class="pid">
201 <col class="name">
202 <col class="number">
203 <col class="number">
204 <col class="number">
205 <col class="number">
206 <col class="number">
207 </colgroup>
208 <tr class="firstRow doNotFilter">
209 <th>
210 </th>
211 <th>
212 </th>
213 <th colspan="3">
214 Memory
215 </th>
216 <th colspan="2">
217 Virtual memory
218 </th>
220 </tr>
221 <tr class="secondRow doNotFilter">
222 <th class="pid">
224 </th>
225 <th class="name">
226 Name
227 </th>
228 <th class="number">
229 Private
230 </th>
231 <th class="number">
232 Shared
233 </th>
234 <th class="number">
235 Total
236 </th>
237 <th class="number">
238 Private
239 </th>
240 <th class="number">
241 Mapped
242 </th>
243 </tr>
245 <tr jsselect="browzr_data">
246 <td class="pid">
247 <span class="th" jscontent="pid"></span>
248 </td>
249 <td class="name">
250 <div>
251 Browser
252 </div>
253 </td>
254 <td class="number">
255 <span class="th" jseval="addToSum('tot_ws_priv', $this.ws_priv +
256 $this.ws_shareable - $this.ws_shared)" jscontent="ws_priv +
257 ws_shareable - ws_shared"></span><span class="k">k</span>
258 </td>
259 <td class="number">
260 <span class="th" jscontent="ws_shared"></span>
261 <span class="k">k</span>
262 </td>
263 <td class="number">
264 <span class="th" jseval="addToSum('tot_ws_tot', $this.ws_priv +
265 $this.ws_shareable)" jscontent="ws_priv +
266 ws_shareable"></span><span class="k">k</span>
267 </td>
268 <td class="number">
269 <span class="th" jseval="addToSum('tot_comm_priv', $this.comm_priv)"
270 jscontent="comm_priv"></span><span class="k">k</span>
271 </td>
272 <td class="number">
273 <span class="th" jseval="addToSum('tot_comm_map', $this.comm_map)"
274 jscontent="comm_map"></span><span class="k">k</span>
275 </td>
276 </tr>
277 <tr jsselect="child_data">
278 <td class="pid">
279 <span class="th" jscontent="pid"></span>
280 </td>
281 <td class="name">
282 <div jscontent="child_name"></div>
283 <div jsselect="titles">
284 <span jscontent="$this"></span><br>
285 </div>
286 </td>
287 <td class="number">
288 <span class="th" jseval="addToSum('tot_ws_priv', $this.ws_priv +
289 $this.ws_shareable - $this.ws_shared)" jscontent="ws_priv +
290 ws_shareable - ws_shared"></span><span class="k">k</span>
291 </td>
292 <td class="number">
293 <span class="th" jscontent="ws_shared"></span><span
294 class="k">k</span>
295 </td>
296 <td class="number">
297 <span class="th" jseval="addToSum('tot_ws_tot', $this.ws_priv +
298 $this.ws_shareable)" jscontent="ws_priv +
299 ws_shareable"></span><span class="k">k</span>
300 </td>
301 <td class="number">
302 <span class="th" jseval="addToSum('tot_comm_priv', $this.comm_priv)"
303 jscontent="comm_priv"></span><span class="k">k</span>
304 </td>
305 <td class="number">
306 <span class="th" jseval="addToSum('tot_comm_map', $this.comm_map)"
307 jscontent="comm_map"></span><span class="k">k</span>
308 </td>
309 </tr>
310 <tr class="total doNotFilter">
311 <td class="pid">
312 </td>
313 <td class="name">
314 &Sigma;
315 </td>
316 <td class="number">
317 <span class="th" id="tot_ws_priv">0</span><span class="k">k</span>
318 </td>
319 <td class="number">
320 </td>
321 <td class="number">
322 <span class="th" id="tot_ws_tot">0</span><span class="k">k</span>
323 </td>
324 <td class="number">
325 <span class="th" id="tot_comm_priv">0</span><span class="k">k</span>
326 </td>
327 <td class="number">
328 <div class="help">
329 <div>
331 This is an approximation. Conceptually, this is the total
332 amount of in-memory pages for the entire logical
333 <span jscontent="current_browser_name"></span> application,
334 without double counting shared pages (e.g. mapped DLLs,
335 SharedMemory bitmaps, etc.) across the browser and renderers.
336 </p>
337 </div>
338 </div>
339 <span class="th" id="tot_comm_map">0</span><span class="k">k</span>
340 </td>
341 </tr>
343 <tr class="noResults">
344 <td colspan="99">
345 No results found.
346 </td>
347 </tr>
348 </table>
349 </div>
350 <script src="chrome://resources/js/jstemplate_compiled.js"></script>
351 </body>
352 </html>