[cfe-dev] distcc implementation

Mike Miller michael.g.miller at gmail.com
Fri Feb 12 22:09:51 PST 2010


I'm currently taking a class in Parallel Systems. A major part of the class
is a project. I asked on #llvm for project ideas, and Chris Lattner
suggested a clang/llvm based distcc implementation. This was
previously suggested
for a GSoC project<http://osdir.com/ml/compilers.clang.devel/2008-04/msg00059.html>,
but (according to Chris) has not been implemented yet. I pitched the idea to
my professor, and he thought it would be a good project.

Now, I'm investigating what it would take to build such an implementation.
I'm curious about the following:

1. How hard will it be to navigate the LLVM/clang codebase having very
little compiler domain knowledge?

2. What stages of the compilation are worth parallelizing(at least for a
first step)?

3. Will it be feasible to implement a basic distcc implementation in 1-2
months? There should be 4 or so people working on the project, but none of
us have significant compiler domain knowledge. If not, is there a subset of
the problem that's worth working on?

4. Are there any examples of code(preferably in real-world projects) which
would lend themselves to parallel compilation which come to mind? At the end
of the project, we'll need to document the performance of our work, so I'd
like to be thinking about how we'd create (good) presentable results along
the way.

5. Where should I start? :). Obviously this is a pretty large undertaking,
but is there any documentation that I should look at? Any particular source
files that would be relevant?

Any other comments about the project would also be greatly appreciated!

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20100213/31616d33/attachment.html>

More information about the cfe-dev mailing list