Discover the New Firefox Profiler
profiler.firefox.com
Nazım Can Altınova
$ whoami
2
3
4
Wait, what’s happening here?
5
What is a profiler?
6
Helps developers to analyze performance issues
7
And gives insight
8
What is sampling?
9
main()
a()
b()
c()
1ms
Stops the execution of the profiled code at a fixed rate and records relevant information like the current stack.
10
Samples provide a view into the profiled program
11
But it can miss important events that happen quickly.
12
Markers to the rescue!
13
What are markers?
Markers provide a view into the executing code that does not miss anything.
14
Some Existing profiler tools
15
What is the Firefox Profiler
16
Capture a performance profile. Analyze it. Share it. Make the web faster.
17
18
Two main advantages
19
20
2.1. Capture a profile and share with an expert
21
2.2. Capture it yourself, analyze the data later
22
How to capture a good profile?
23
1. Go to profiler.firefox.com
24
2. Follow the instructions
25
26
2. Capture profile�OR�Ctrl + Shift + 2
27
Interval of sampling
Threads you want to profile
Features you can enable for the profiler
Capturing workflow
28
Profiler UI and how to read it
29
Timeline
30
Screenshots in the timeline
31
Thread stack graph in the timeline
32
Markers in the timeline
33
34
The range selection
35
The panels
36
Sharing a profile
37
What do we have in the profile data?
38
Samples
Markers
Screenshots
Profile metadata
Network Requests
Other thread information
Profile sharing popup
39
40
Single tab and advanced view
41
42
43
Firefox Profiler Documentation: https://profiler.firefox.com/docs/
Slides: https://share.firefox.dev/profiler-fosdem
Matrix channel: https://chat.mozilla.org/#/room/#profiler:mozilla.org
Thank You