[RFC] Using D3 in LNT?


I’ve been working on further improving the perf profile view in LNT that James added recently.
I’ve got a series of patches ready that reconstruct the control flow graph from the perf profiles, which helps a lot in quickly finding the codegen differences that cause performance deltas.
I’ve used the D3 javascript library (https://d3js.org/) to implement the visualization.

My question is if there is any objection to add D3 to LNT?

I think D3 will allow us to produce nicer and/or more informative charts and visualizations in the future.
I’ve attached an example screenshot of the control flow graph visualization that I plan to upstream if there is no objection to add D3 to LNT.



I love D3. This is a great idea. Maybe we can finally kill flot!

We are going to have to start using the html data attributes more; but that is a good thing IMO.

D3 would greatly simply some of our CSS/templates too. I am regularly surprised how hard it is to make a cell turn colors in our current jinja macro setup.

Is it okay to have D3 checked into the LNT repo, or should we use a CDN link?

Beautiful! I love it :slight_smile:

Thanks Kristof.

Not using a CDN link would mean you can work offline with an LNT server installed on your laptop, for example.
Otherwise, I'm as happy with using a CDN link instead of importing it into the LNT repo. I can't think of another reason not to use a CDN link.
I don't really have a strong preference either way.

Do you have a preference?



Using D3 sounds great to me, thanks!

My preference is to have a checked in copy and update the LICENSE.txt appropriately.

Licence was my only concern. Checked in is my preference as well. Thanks Kristof!

Thanks for the feedback, I added D3 in r267122.