d121e8eee0
Drive-by-fix: Clean up html header tags a bit Change-Id: Ib9d3e0a24497f393b1d45b7b6ab46af381252613 No-Try: True Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3845076 Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82620}
139 lines
3.2 KiB
HTML
139 lines
3.2 KiB
HTML
<!DOCTYPE html>
|
|
<!-- Copyright 2017 the V8 project authors. All rights reserved.
|
|
Use of this source code is governed by a BSD-style license that can be
|
|
found in the LICENSE file. -->
|
|
<html lang="en">
|
|
<head>
|
|
<!-- This will be overwritten by the v8.dev/tools exporter -->
|
|
<!-- ANALYTICS_PLACEHOLDER -->
|
|
<meta charset="utf-8"/>
|
|
<title>V8 Tick Processor</title>
|
|
<link rel="stylesheet" href="profview.css">
|
|
<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
|
|
<link href="https://fonts.googleapis.com/icon?family=Material+Icons"
|
|
rel="stylesheet">
|
|
|
|
<script src="profview.js"></script>
|
|
<script src="profile-utils.js"></script>
|
|
</head>
|
|
|
|
<body onLoad="main.onLoad();" onResize="main.onResize();">
|
|
<h3 style="margin-top: 2px;">
|
|
Chrome V8 profiling log processor
|
|
</h3>
|
|
|
|
<input type="file" id="fileinput" /><div id="source-status"></div>
|
|
<br>
|
|
<hr>
|
|
|
|
<div id="help">
|
|
Usage:
|
|
|
|
<br>
|
|
<br>
|
|
|
|
Record the profile:
|
|
<pre>
|
|
d8 --prof your-file.js
|
|
</pre>
|
|
|
|
Then process the file (this resolves C++ symbols and produces
|
|
a JSON file with the profile data):
|
|
|
|
<pre>
|
|
<v8-dir>/tools/linux-tick-processor --preprocess v8.log > v8.json
|
|
</pre>
|
|
|
|
To view the profile, click the <i>Choose file</i> button above and choose
|
|
the file in the dialog box.
|
|
|
|
<br>
|
|
<br>
|
|
For recording a profile from Chrome use:
|
|
<pre>
|
|
--no-sandbox --js-flags=--prof
|
|
</pre>
|
|
|
|
If running on Android use also use --single-process:
|
|
<pre>
|
|
--single-process --no-sandbox --js-flags=--prof
|
|
</pre>
|
|
|
|
If the profile is from Android pass the unstripped Chrome library to
|
|
resolve C++ symbols when processing the file using linux-tick-processor.
|
|
<pre>
|
|
<v8-dir>/tools/linux-tick-processor --preprocess --apk-embedded-library=./out/Release/lib.unstripped/libchrome.so v8.log > v8.json
|
|
</pre>
|
|
|
|
More detailed instructions for Android here: https://v8.dev/docs/profile-chromium#android
|
|
</div>
|
|
|
|
<div id="timeline" style="display : none">
|
|
<div>
|
|
<canvas id="timeline-canvas"/>
|
|
</div>
|
|
<table>
|
|
<tr id="timeline-legend">
|
|
</tr>
|
|
</table>
|
|
<div>
|
|
Current code object: <span id="timeline-currentCode"></span>
|
|
<button id="source-viewer-hide-button">Hide source</button>
|
|
</div>
|
|
<div>
|
|
<table id="source-viewer"> </table>
|
|
</div>
|
|
</div>
|
|
|
|
<br>
|
|
|
|
<div id="mode-bar" style="display : none">
|
|
</div>
|
|
|
|
<div id="calltree" style="display : none">
|
|
<br>
|
|
Attribution:
|
|
<select id="calltree-attribution">
|
|
</select>
|
|
Top-level tree buckets:
|
|
<select id="calltree-categories">
|
|
</select>
|
|
Sort by:
|
|
<select id="calltree-sort">
|
|
</select>
|
|
|
|
<br>
|
|
<br>
|
|
|
|
<table id="calltree-table" class="calltree">
|
|
<thead>
|
|
<tr>
|
|
<th class="numeric">Time (incl)</th>
|
|
<th class="numeric">% of parent</th>
|
|
<th id="calltree-table-own-time-header" class="numeric">Own time</th>
|
|
<th>Function/category</th>
|
|
<th class="numeric">Ticks</th>
|
|
<th id="calltree-table-own-ticks-header" class="numeric">Own ticks</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div id="summary" style="display : none">
|
|
</div>
|
|
|
|
<div id="function-details" style="display : none">
|
|
</div>
|
|
|
|
<p style="font-style:italic;">
|
|
<br>
|
|
<br>
|
|
<br>
|
|
Copyright the V8 Authors - Last change to this page: 2020/12/04
|
|
</p>
|
|
|
|
</body>
|
|
</html>
|