[Webkit-unassigned] [Bug 153502] New: Web Inspector: Better handle JavaScriptCore Recompilation for Inspector (Debugging, Profiling)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jan 26 12:36:34 PST 2016


            Bug ID: 153502
           Summary: Web Inspector: Better handle JavaScriptCore
                    Recompilation for Inspector (Debugging, Profiling)
    Classification: Unclassified
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: All
                OS: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Web Inspector
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: joepeck at webkit.org
                CC: bburg at apple.com, graouts at webkit.org,
                    joepeck at webkit.org, mattbaker at apple.com,
                    nvasilyev at apple.com, sbarati at apple.com,
                    timothy at apple.com, webkit-bug-importer at group.apple.com

Better handle JavaScriptCore Recompilation for Inspector (Debugging, Profiling).

There are two aspects to this bug:

  1. Recompilation is work that should not be unnecessarily performed.
    - Inspector should do a better job of only triggering recompile to avoid unnecessary work

  2. Enabling each set of extra byte codes incurs a performance cost of just running JavaScript.
    - Inspector should do a better job of informing the user / changing the conditions based on the use case
    - Generic debugging should not need profiling overhead (exception right now is console.profile which may happen at any time)
    - High Fidelity profiling may not want debugging overhead (debugging incurs about a 2x slowdown)

The biggest concern I see right now is the 2x overhead of Debugging, which would skew high fidelity profiling scenarios. The overhead of the sampling profiler may be so low that it would be reasonable to keep it on all the time while the inspector is open.

- Currently open the inspector causes "2 recompilations" as soon as a frontend is created
  - 1 for debugger attaching to add "Debugging" byte codes (for breakpoints)
  - 1 for profiling (TimelineAgent) to add "Profiling" byte codes
- I don't know at the moment if a recompilation actually does any immediate work or not. I suspect it doesn't.

You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160126/7e4dadcd/attachment.html>

More information about the webkit-unassigned mailing list