hifi: #21153 Extend Needle for benchmarking the High Fidelity client

Our current data requires more parsing and formatting to create high level info that is useful as benchmarks. You can find the current page (also known as: Needle) here:

How the current system works:
Prototype Needle page:
Sample trace result:

Download the above trace and drop it into the web page: . We will be extending this page in the work.

Project Work:
Extend Needle to evaluate and display a representation of an average frame timing and scheduling layout of the work happening during the frame. The data needed to compute this average frame will be extracted within a specific range of time out of the full trace.
The user will upload the file to Needle, the code will discard first 10% and last 10% of trace. On remaining load, find the frame pattern, find the average of all functions based on a single frame and display it in the following way as illustrated by this capture from chrome::tracing zooming on a single frame:

Average frame:
-Name of function
-Start Time (in seconds)
-Position of beginning and end relative to each other
-Relative positions of sub-functions
-On average where call started,
-On average how long call ran
-Finish Time (in seconds)
Stack sub-functions under functions as it looks in chrome://tracing but on a per frame basis

With the above information we want to visualize the results in a format similar to the chrome://tracing/ tool, summarized

To see how the summary data should look you can view a detailed version in the chrome://testing tool:

Step 1) Open a Chrome browser and go to the URL chrome://tracing
Step 2) Drag sample trace result into chrome://tracing and view the results

This gives you an example of the all the information contained in the file (e.g. )

Put stats in an HTML page- read only

Comments & Activity

Labels Saved!


Login to bid
Who Amount Done in ...
No bids yet.
Login to add fees