As a brief introduction, I am a graduate student that got interested in the "Parallelize the compilation using threads"(GSoC 2018 [1]). I am a newcommer in GCC, but already have sent some patches, some of them have already been accepted [2].
I brought this subject up in IRC, but maybe here is a proper place to discuss this topic. From my point of view, parallelizing GCC itself will only speed up the compilation of projects which have a big file that creates a bottleneck in the whole project compilation (note: by big, I mean the amount of code to generate). Additionally, I know that GCC must not change the project layout, but from the software engineering perspective, this may be a bad smell that indicates that the file should be broken into smaller files. Finally, the Makefiles will take care of the parallelization task. My questions are: 1. Is there any project compilation that will significantly be improved if GCC runs in parallel? Do someone has data about something related to that? How about the Linux Kernel? If not, I can try to bring some. 2. Did I correctly understand the goal of the parallelization? Can anyone provide extra details to me? I am willing to turn my master’s thesis on that and also apply to GSoC 2019 if it shows to be fruitful. [1] https://gcc.gnu.org/wiki/SummerOfCode [2] https://patchwork.ozlabs.org/project/gcc/list/?submitter=74682 Thanks