Recordings launch profiler.firefox.com in a new tab. All data is stored locally, but you can choose to upload it for sharing.

Web Developer

Recommended preset for most web app debugging, with low overhead.

Firefox Platform

Recommended preset for internal Firefox platform debugging.

Firefox Front-End

Recommended preset for internal Firefox front-end debugging.

Firefox Graphics

Recommended preset for Firefox graphics performance investigation.

Media

Recommended preset for diagnosing audio and video problems.

Custom

Full Settings

Buffer Settings

Sampling interval:

1 ms

Buffer size:

1 GiB

Threads

GeckoMain

Compositor

DOM Worker

Renderer

RenderBackend

PaintWorker

StyleThread

Socket Thread

StreamTrans

ImgDecoder

DNS Resolver

JS Helper

Bypass selections above and record all registered threads

Add custom threads by name:

Features (Recommended on by default)

Native Stacks

Record native stacks (C++ and Rust). This is not available on all platforms.

JavaScript

Record JavaScript stack information, and interleave it with native stacks.

CPU Utilization

Record how much CPU has been used between samples by each profiled thread.

Features

Native Leaf Stack

Record the native memory address of the leaf-most stack. This could be useful on platforms that do not support stack walking.

No Periodic Sampling

Disable interval-based stack sampling

Main Thread File IO

Record main thread File I/O markers.

Profiled Threads File IO

Record File I/O markers from only profiled threads.

All File IO

Record File I/O markers from all threads, even unregistered threads.

No File IO Stack Sampling

Do not sample stacks when recording File I/O markers.

Sequential Styling

Disable parallel traversal in styling.

Screenshots

Record screenshots of all browser windows.

Preference Read

Track Preference Reads

IPC Messages

Track IPC messages.

JS Allocations

Track JavaScript allocations

Audio Callback Tracing

Trace real-time audio callbacks.

Disabled Features

Java

Profile Java code

This feature is only available on Android.

TaskTracer (Experimental)

Enable TaskTracer

TaskTracer requires a custom build with the environment variable MOZ_TASK_TRACER set.

JSTracer (Experimental)

Trace JS engine

JS Tracer is currently disabled due to crashes. See Bug 1565788.

Native Allocations

Track native allocations

Local build

If you’re profiling a build that you have compiled yourself, on this machine, please add your build’s objdir to the list below so that it can be used to look up symbol information.

Community content is available under CC-BY-SA unless otherwise noted.