Hi Tony, sorry for a late reply, things are a bit crazy recently.
On Sat, Mar 07 2020, y2s1982 . wrote: > Hello everyone, > > My name is Tony Sim. In anticipation to planning for my last summer within > my degree program, I am considering to take part in the Google Summer of > Codes. In particular, I would like to work on implementing OMPD for GCC > and related programs. > > I have studied CPU and GPU parallel programming in the span of two > semesters, which included OpenMP as a significant part of the curriculum. I > am quite fascinated by its possibilities and would love a chance to learn > more while tackling a real-world challenge. > > I would appreciate any additional information on the project. It looks > very interesting. Really, it sounds like something I wish I had when I was > taking the course. > The OMPD project idea might be the most ambitious from the whole lot. Basically, the goal is to come up with a prototype implementation of chapter 5 of OpenMP 5.0 Specification (https://www.openmp.org/specifications/), so that OpenMP programs compiled with GCC can be debugged in GDB using OpenMP terminology. In order to start you need to understand how OpenMP programs are internally structured (compile some a few basic ones with -fdump-tree-optimized and then examine the generated dump) and especially familiarize yourself with the libgomp library that provides essential run-time support to OpenMP programs. Libgomp is part of GCC project, see https://gcc.gnu.org/git/?p=gcc.git;a=tree;f=libgomp. The long-term goal is to implement that chapter 5 in libgomp, so that internal structures of libgomp and the run program can be exposed with this interface. Of course, that would be too big a project for one summer, so the immediate goal would be to come up with an implementation of a subset that would behave well in a given set of contexts... and either make it consumable by GDB or at the very least demonstrate that it can be done. Still a lot of work. If you have any further questions, please feel free to ask. Good luck with your GSoC! Martin