Closed Bug 1077461 Opened 10 years ago Closed 9 years ago

Build call tree for memory allocations view

Categories

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

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
Firefox 38

People

(Reporter: jsantell, Assigned: vporof)

References

Details

Attachments

(1 file, 1 obsolete file)

      No description provided.
Blocks: perf-tool-v2
Depends on: 1077451
Summary: Build memory allocations view for new performance tool → Build call tree for memory allocations view
Blocks: 1077469
Assignee: nobody → vporof
Memory allocations view should not be displayed in gecko < 35 (when timeline does not exist)
Depends on: 1077476
Depends on: 1127322
Attached patch v1 (obsolete) — Splinter Review
This looks bigger than it is. Half of it is test fixes because CallTreeView and FlameGraphView were prefixed with "Js".
Attachment #8556594 - Flags: review?(jsantell)
Attached patch v1Splinter Review
Added another test.
Attachment #8556594 - Attachment is obsolete: true
Attachment #8556594 - Flags: review?(jsantell)
Attachment #8556693 - Flags: review?(jsantell)
Comment on attachment 8556693 [details] [diff] [review]
v1

Review of attachment 8556693 [details] [diff] [review]:
-----------------------------------------------------------------

Some nits, looks good though!

::: browser/devtools/performance/modules/front.js
@@ +164,4 @@
>      if (this._target.form && this._target.form.timelineActor) {
>        this._timeline = new TimelineFront(this._target.client, this._target.form);
>      } else {
> +      this._timeline = new MockedFront([

We should still comment why this is necessary (like in Gecko < 35)

::: browser/devtools/performance/modules/recording-model.js
@@ +259,5 @@
> +      // do not have a zero epoch, and are microseconds instead of milliseconds,
> +      // so offset all of them by the start time, also converting from µs to ms.
> +      case "allocations": {
> +        let [{ sites, timestamps, frames, counts }] = data;
> +        let timeOffset = this._memoryStartTime * 1000;

nit: should use the `timeScale` constant here
Attachment #8556693 - Flags: review?(jsantell) → review+
(In reply to Jordan Santell [:jsantell] [@jsantell] from comment #4)
> 
> We should still comment why this is necessary (like in Gecko < 35)
> 

We still do. I moved the comment to PerformanceActorsConnection.prototype where all the actors are opened.
https://hg.mozilla.org/mozilla-central/rev/5adbe8e2a52d
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Whiteboard: [fixed-in-fx-team]
Target Milestone: --- → Firefox 38
Depends on: 1128960
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: