Closed Bug 683438 Opened 13 years ago Closed 7 years ago

Implement Tracing in PyMake

Categories

(Firefox Build System :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: gps, Unassigned)

Details

I think it would be a good idea for PyMake to emit some kind of machine-readable log of events it is performing. This would allow us to better record and analyze what is actually going on with the build system. This could lead to obvious improvements to the build system such as easier identification of hot spots and even performance regressions.

I've imported the Mercurial repository into Github and created a branch where I have modified PyMake to perform tracing. You can view the code online at:

https://github.com/indygreg/pymake/tree/tracing

The feature isn't complete (I'd still like to implement tracing of rule sets, for example) and I'm sure there are some bugs (big ones documented with "TODO").

But I think it is far enough along to get feedback from the PyMake maintainers on what they'd like to see before inclusion in the official tree. Hence this bug.
 
If you want to see the code diff:

 git clone git://github.com/indygreg/pymake.git
 cd pymake
 git diff origin/master..origin/tracing

Or, I can upload a diff upon request.

Information about tracing can be found at https://github.com/indygreg/pymake/blob/tracing/README.tracing

I encourage people to generate trace logs of mozilla-central and play around with the included Python parsing module to perform analysis. I've definitely made some interesting observations with it! I'm hoping to hook up visualizations (like http://smvv.kompiler.org/build_order.html), but that's for another day.
Mass close of pymake-related bugs.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.