1*6dbdd20aSAndroid Build Coastguard Worker<%- include('template_header.html'); -%> 2*6dbdd20aSAndroid Build Coastguard Worker<main class="site-content"> 3*6dbdd20aSAndroid Build Coastguard Worker <div class="section-wrapper"> 4*6dbdd20aSAndroid Build Coastguard Worker <section class="banner"> 5*6dbdd20aSAndroid Build Coastguard Worker <h1><span>System profiling,</span> <span>app tracing</span> <span>and trace analysis</span></h1> 6*6dbdd20aSAndroid Build Coastguard Worker <h2>Open-Source · Portable · Efficient</h2> 7*6dbdd20aSAndroid Build Coastguard Worker <div class="home-img"><img src="/assets/home.png" alt="Perfetto"></div> 8*6dbdd20aSAndroid Build Coastguard Worker </section> 9*6dbdd20aSAndroid Build Coastguard Worker </div> 10*6dbdd20aSAndroid Build Coastguard Worker 11*6dbdd20aSAndroid Build Coastguard Worker <div class="section-wrapper"> 12*6dbdd20aSAndroid Build Coastguard Worker <section class="home-highlights"> 13*6dbdd20aSAndroid Build Coastguard Worker <a href="#profiling"><div class="icon"></div>System Profiling</a> 14*6dbdd20aSAndroid Build Coastguard Worker <a href="#tracing"><div class="icon"></div>In-App Tracing</a> 15*6dbdd20aSAndroid Build Coastguard Worker <a href="#viewer"><div class="icon"></div>Trace Viewer</a> 16*6dbdd20aSAndroid Build Coastguard Worker <a href="#analysis"><div class="icon"></div>Trace Analysis</a> 17*6dbdd20aSAndroid Build Coastguard Worker </section> 18*6dbdd20aSAndroid Build Coastguard Worker </div> 19*6dbdd20aSAndroid Build Coastguard Worker 20*6dbdd20aSAndroid Build Coastguard Worker <div class="section-wrapper"> 21*6dbdd20aSAndroid Build Coastguard Worker <section class="home-section" id="profiling"> 22*6dbdd20aSAndroid Build Coastguard Worker <img src="/assets/sys_profiling.png" alt="Profiling illustration"> 23*6dbdd20aSAndroid Build Coastguard Worker <div> 24*6dbdd20aSAndroid Build Coastguard Worker <h2>System-wide profiling for Linux and Android</h2> 25*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 26*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">sort</i> 27*6dbdd20aSAndroid Build Coastguard Worker <h3>Linux kernel tracing</h3> 28*6dbdd20aSAndroid Build Coastguard Worker <p>Capture high frequency ftrace data: scheduling activity, task switching latency, CPU frequency and much more</p> 29*6dbdd20aSAndroid Build Coastguard Worker </div> 30*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 31*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">nfc</i> 32*6dbdd20aSAndroid Build Coastguard Worker <h3>Userspace profilers and extra probes</h3> 33*6dbdd20aSAndroid Build Coastguard Worker <p>Native heap profiling, Java heap profiling, pollers for /proc stat files</p> 34*6dbdd20aSAndroid Build Coastguard Worker </div> 35*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 36*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">android</i> 37*6dbdd20aSAndroid Build Coastguard Worker <h3>Built into Android</h3> 38*6dbdd20aSAndroid Build Coastguard Worker <p>Part of the platform since Android 9 Pie, runs on Linux as well</p> 39*6dbdd20aSAndroid Build Coastguard Worker </div> 40*6dbdd20aSAndroid Build Coastguard Worker <a href="/docs/quickstart/android-tracing" class="button">Get Started</a> 41*6dbdd20aSAndroid Build Coastguard Worker </div> 42*6dbdd20aSAndroid Build Coastguard Worker </section> 43*6dbdd20aSAndroid Build Coastguard Worker </div> 44*6dbdd20aSAndroid Build Coastguard Worker 45*6dbdd20aSAndroid Build Coastguard Worker <div class="section-wrapper"> 46*6dbdd20aSAndroid Build Coastguard Worker <section class="home-section" id="tracing"> 47*6dbdd20aSAndroid Build Coastguard Worker <img src="/assets/app_tracing.png" alt="Tracing illustration"> 48*6dbdd20aSAndroid Build Coastguard Worker <div> 49*6dbdd20aSAndroid Build Coastguard Worker <h2>App Tracing</h2> 50*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 51*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">developer_mode</i> 52*6dbdd20aSAndroid Build Coastguard Worker <h3>Efficient trace point instrumentation</h3> 53*6dbdd20aSAndroid Build Coastguard Worker <p>Log your C++ app’s activity with high throughput, low overhead trace points</p> 54*6dbdd20aSAndroid Build Coastguard Worker </div> 55*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 56*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">ballot</i> 57*6dbdd20aSAndroid Build Coastguard Worker <h3>Structured and configurable events</h3> 58*6dbdd20aSAndroid Build Coastguard Worker <p>Define custom protobuf messages to represent strongly-typed app-specific information, trace only what you need</p> 59*6dbdd20aSAndroid Build Coastguard Worker </div> 60*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 61*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">view_compact</i> 62*6dbdd20aSAndroid Build Coastguard Worker <h3>Integrated with system-wide tracing</h3> 63*6dbdd20aSAndroid Build Coastguard Worker <p>Correlate your app’s state with system-wide profiling data on the same timeline</p> 64*6dbdd20aSAndroid Build Coastguard Worker </div> 65*6dbdd20aSAndroid Build Coastguard Worker <a href="/docs/instrumentation/tracing-sdk" class="button">Get Started</a> 66*6dbdd20aSAndroid Build Coastguard Worker </div> 67*6dbdd20aSAndroid Build Coastguard Worker </section> 68*6dbdd20aSAndroid Build Coastguard Worker </div> 69*6dbdd20aSAndroid Build Coastguard Worker 70*6dbdd20aSAndroid Build Coastguard Worker <div class="section-wrapper"> 71*6dbdd20aSAndroid Build Coastguard Worker <section class="home-section" id="viewer"> 72*6dbdd20aSAndroid Build Coastguard Worker <img src="/assets/ui.png" alt="Trace viewer illustration"> 73*6dbdd20aSAndroid Build Coastguard Worker <div> 74*6dbdd20aSAndroid Build Coastguard Worker <h2>Trace Viewer</h2> 75*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 76*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">timeline</i> 77*6dbdd20aSAndroid Build Coastguard Worker <h3>Interactive trace exploration</h3> 78*6dbdd20aSAndroid Build Coastguard Worker <p>Record, view and process trace data with the Perfetto UI</p> 79*6dbdd20aSAndroid Build Coastguard Worker </div> 80*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 81*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">file_copy</i> 82*6dbdd20aSAndroid Build Coastguard Worker <h3>Supports popular trace format files</h3> 83*6dbdd20aSAndroid Build Coastguard Worker <p>TraceEvent JSON, Android systrace, ftrace text output</p> 84*6dbdd20aSAndroid Build Coastguard Worker </div> 85*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 86*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">offline_bolt</i> 87*6dbdd20aSAndroid Build Coastguard Worker <h3>Runs fully in your browser</h3> 88*6dbdd20aSAndroid Build Coastguard Worker <p>No server interaction involved, works even if you are offline</p> 89*6dbdd20aSAndroid Build Coastguard Worker </div> 90*6dbdd20aSAndroid Build Coastguard Worker <div> 91*6dbdd20aSAndroid Build Coastguard Worker <a href="//ui.perfetto.dev" class="button">Open the UI</a> 92*6dbdd20aSAndroid Build Coastguard Worker </div> 93*6dbdd20aSAndroid Build Coastguard Worker </div> 94*6dbdd20aSAndroid Build Coastguard Worker </section> 95*6dbdd20aSAndroid Build Coastguard Worker </div> 96*6dbdd20aSAndroid Build Coastguard Worker 97*6dbdd20aSAndroid Build Coastguard Worker <section class="home-section" id="analysis"> 98*6dbdd20aSAndroid Build Coastguard Worker <img src="/assets/analysis.png" alt="Trace analysis illustration"> 99*6dbdd20aSAndroid Build Coastguard Worker <div> 100*6dbdd20aSAndroid Build Coastguard Worker <h2>Trace Analysis</h2> 101*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 102*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">storage</i> 103*6dbdd20aSAndroid Build Coastguard Worker <h3>SQL-based trace model</h3> 104*6dbdd20aSAndroid Build Coastguard Worker <p>Trace processor ingests traces and exposes a SQLite-based 105*6dbdd20aSAndroid Build Coastguard Worker interface to access the contents of the trace, both via shell and UI 106*6dbdd20aSAndroid Build Coastguard Worker </p> 107*6dbdd20aSAndroid Build Coastguard Worker </div> 108*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 109*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">speed</i> 110*6dbdd20aSAndroid Build Coastguard Worker <h3>Large trace analysis</h3> 111*6dbdd20aSAndroid Build Coastguard Worker <p> 112*6dbdd20aSAndroid Build Coastguard Worker Supports traces up to tens of GBs 113*6dbdd20aSAndroid Build Coastguard Worker </p> 114*6dbdd20aSAndroid Build Coastguard Worker </div> 115*6dbdd20aSAndroid Build Coastguard Worker <div class="home-item"> 116*6dbdd20aSAndroid Build Coastguard Worker <i class="material-icons-round">compare_arrows</i> 117*6dbdd20aSAndroid Build Coastguard Worker <h3>Interoperable</h3> 118*6dbdd20aSAndroid Build Coastguard Worker <p>Can import and export popular trace formats: Chromium JSON trace format, Android Systrace, ftrace, CSV</p> 119*6dbdd20aSAndroid Build Coastguard Worker </div> 120*6dbdd20aSAndroid Build Coastguard Worker <div> 121*6dbdd20aSAndroid Build Coastguard Worker <a href="/docs/analysis/trace-processor" class="button">Learn more</a> 122*6dbdd20aSAndroid Build Coastguard Worker </div> 123*6dbdd20aSAndroid Build Coastguard Worker </div> 124*6dbdd20aSAndroid Build Coastguard Worker </section> 125*6dbdd20aSAndroid Build Coastguard Worker 126*6dbdd20aSAndroid Build Coastguard Worker <%- include('template_footer.html'); -%> 127*6dbdd20aSAndroid Build Coastguard Worker</main> 128*6dbdd20aSAndroid Build Coastguard Worker 129*6dbdd20aSAndroid Build Coastguard Worker</body> 130*6dbdd20aSAndroid Build Coastguard Worker</html> 131*6dbdd20aSAndroid Build Coastguard Worker 132