Closed Bug 1732518 Opened 4 years ago Closed 4 years ago

Allocations profiler tools in new Performance panel

Categories

(DevTools :: Performance Tools (Profiler/Timeline), task)

task

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: jujjyl, Unassigned)

References

Details

Attachments

(1 file)

The new Firefox Profiler is due to replace the old Performance tab.

However the old Performance tab has a critical Allocations profiler feature that is extremely useful to profile temporary garbage collector pressure in interactive WebGL/WebGPU game applications using Emscripten/WebAssembly. No other profiler in another browser is able to show this kind of information.

Unfortunately to my understanding, the new Firefox Profiler does not have this same tool available in it? If this feature was to go away with the profiler migration, it would be a great shame, as it is a critical use case for optimizing temp GC pressure in Wasm applications.

Attached a screenshot from the old tool in question.

Did I just miss the UI to use the Allocations profiler tool in the new profiler? I hope that tool is not in the process of being removed?

hello Jukka, thanks for the report.

It looks like the new Profiler does have a way to track Allocations (see https://profiler.firefox.com/docs/#/./memory-allocations?id=memory-allocations), but it's not exposed by default.
When opening the performance panel, in the Settings section, changing from Web Developer to Custom will make a Edit Settings… link appear.
By clicking on it, you will be able to adjust what the profiler records and exposes, and you can see a JS Allocations item in the list.

After trying it, could you tell us if that would be a good replacement for the Allocation profiler in the "old" profiler, or if is missing a few things?

Let's also needinfo Julien who'll know more about this than I do

Type: defect → task
Flags: needinfo?(jujjyl)
Flags: needinfo?(felash)
Summary: New Firefox Profiler regresses Allocations profiler tool? → Allocations profiler tools in new Performance panel

Hey!

(In reply to Nicolas Chevobbe [:nchevobbe] from comment #1)

It looks like the new Profiler does have a way to track Allocations (see https://profiler.firefox.com/docs/#/./memory-allocations?id=memory-allocations), but it's not exposed by default.
When opening the performance panel, in the Settings section, changing from Web Developer to Custom will make a Edit Settings… link appear.

"Edit Settings" is now always present, so that the presets are more easily tweakable. This is in nightly v94 for about 1 week (bug 1624246), which will be beta in a few days.

By clicking on it, you will be able to adjust what the profiler records and exposes, and you can see a JS Allocations item in the list.

We have 2 different options: JS Allocations and Native Allocations. They're doing different things, but they can bring different information. Also I'd suggest that you do not enable them both together.

We do want to expose this better, possibly using a preset, but we haven't put a lot of thoughts in it yet. It's not enabled by default because this feature has a lot of overheads and this skews the timing-based data a lot. A basic rule of thumb is that either memory allocations or sampling data will be correct.

Any feedback about these features is very much welcome!

Flags: needinfo?(felash)

I'm closing this bug for now, but please file new ones in case there are problems with these features or you'd like something more specific. Thanks!

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME
See Also: → 1715520
Flags: needinfo?(jujjyl)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: