Closed Bug 932021 (Find-slow-JS) Opened 11 years ago Closed 7 years ago

Find slow JS execution in a Recording

Categories

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

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: akratel, Unassigned)

References

Details

(Whiteboard: [User Story], [mockup])

User Story

As a web App developer, I'd like to easily find slow JS execution within a recording and be able to drill down to the JS that is slow so that I can optimize my JS code.

Acceptance Criteria:
* order flame chart by order of most to least time spent in JS
* able to navigate from flame chart to the actual JS code

Note:

Best place where this is demonstrated is in the Tracelogger demo. The Tracelogger is really not designed for web app developers, but the ordering ability described below shows the power of being able to sort by time spent. 

* Go to http://tracelogger.paas.allizom.org/index.php?subject=octane-splay-32410b741451
* Click in script overview on "total time" below the color chart, this will order the scripts by total time making it obvious splay.js:49 takes 55% of the total time.
As a web App developer, I'd like to easily find slow JS execution within a recording and be able to drill down to the JS that is slow so that I can optimize my JS code.

Acceptance Criteria:
* order flame chart by order of most to least time spent in JS
* able to navigate from flame chart to the actual JS code

Note:

Best place where this is demonstrated is in the Tracelogger demo. The Tracelogger is really not designed for web app developers, but the ordering ability described below shows the power of being able to sort by time spent. 

* Go to http://tracelogger.paas.allizom.org/index.php?subject=octane-splay-32410b741451
* Click in script overview on "total time" below the color chart, this will order the scripts by total time making it obvious splay.js:49 takes 55% of the total time.
Flags: pm-scrub?
Component: Developer Tools → Developer Tools: User Stories
User Story: (updated)
Will this specifically cover JIT / non-JIT code? From uservoice:

"JIT bailouts and invalidation can be expensive, especially in games. Having insights into which parts of your code could not be jitted and why can help to optimize hot loops.

Showing marks in the Profiler when JIT invalidation happens can give valuable insights for otherwise unexplainable janking."
This is about baseline versus ionmonkey. We should inform users which JS code runs in baseline.
Component: Developer Tools: User Stories → Developer Tools: Performance Tools (Profiler/Timeline)
This user story is probably no longer relevant to current product plans.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.