This is a project to make building the Solaris OS/Networking (ON) consolidation
go faster. Hopefully, the optimizations and lessons learned through this effort
can be applied to make builds go faster in general not just for ON.
Brainstorming
Discussions
Observability
Results
- Results from running dtrace script to analyze where most time (in seconds) spent during build (on non-debug clobber build on a SunFire X4600 with 8 dual core Opterons and 32 gig of RAM)
| Directory | Target | Executable | System Call | |
| Directory | dmake(1) time | |||
| Target | dmake(1) time | dmake(1) time | ||
| Executable | Times | Total times | ||
| Counts | ||||
| System Call | Times | Total times | ||
| Counts | Total Counts | |||
| Failures | ||||
| Failure times | Failure times |
Bugs
Related Work
- ccache - compiler cache that caches object files and uses preprocessed file to tell whether cached object file can be used or is stale
- compilercache - Original compiler cache that was a foundation for ccache
- dmake article by Nikolay Molchanov
- distcc - distributed C/C++ compiler frontend that distributes preprocessed source to other machines to build
- Electric Cloud - company developing products for making builds faster
- Modular Makefiles without Recursion - David Marker experiments with single Makefile build system
- Paper analyzing build of Solaris OS/Networking consolidation using projects and tasks to analyze how much time is spent building ON and a database to be able to search all the resulting data in interesting ways
- Recursive Make Considered Harmful - Peter Miller critics of recursive make systems
on 2009/10/26 13:02