This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Threading the compiler


Paul Brook wrote:

For other optimisations I'm not convinced there's an easy win compared with make -j. You have to make sure those passes don't have any global state, and as other people have pointed out garbage collection gets messy. The compile server project did something similar, and that seems to have died.


On the -j option:

What kind of improvements could you get by bypassing the GCC/G++/etc.
front end, and replace it with a set of rules in the makefile?
Using a set of rules to break down the compilation into the individual
steps which can be scheduled in parallel, instead of the GCC front
end running all the parts sequentially. This would allow the -j to
schedule things in a finer grain without touching the compiler itself.

It might be easier to try as a makefile->makefile transformation,
or a modified version of automake. Something like using 'gcc -###'
to split up the compile steps.

Would a transform like this be able to make use of more "free"
CPU cycles? Is there currently much in the way of "free" cycles
available that this would have any effect?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]