GCC's Potential GSoC Projects Include Better Parallelizing The Compiler

Written by Michael Larabel in GNU on 5 February 2019 at 06:55 AM EST. 16 Comments
GNU
While in some areas it's still an extremely cold winter, many open-source projects are already preparing for their participation in Google's annual Summer of Code initiative. The GNU Compiler Collection (GCC) crew that always tends to see at least a few slots for interested student developers has begun formulating some potential project ideas.

For GSoC 2019 some of the ideas they have listed for potentially interested students to consider include support for the OpenMP Debug Interface (OPMD), expanding the math built-in functions, and even supporting AIX 7.2 by Binutils.

The Google Summer of Code idea they have that would be quite rewarding but quite challenging is working on parallelizing the compilation more using threads:
Parallelize the compilation using threads. GCC currently has an awful lot of truly global state and even more per-pass global state which makes this somewhat hard. The idea is to avoid issues with global state as much as possible by partitioning the compilation pipeline in pieces that share as little global state as possible and ensure each thread only works in one of those partitions. The biggest roadblock will be the not thread-safe memory allocator of GCCs garbage collector. The compilation pipeline would in the end be driven by a scheduler assigning functions to be optimized to the partitions in the pipeline. This project would be mentored by Richard Biener.

Students considering GSoC 2019 can learn more about the GCC project ideas via this Wiki page. See the GSoC timeline for details on this year's deadlines and other information.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week