Hi Ambika! Welcome to GCC!
On 2025-03-29T15:26:18-0500, Ambika Sharan via Gcc <gcc@gcc.gnu.org> wrote: > Simple File System for Nvidia and AMD GPU Code Generation Testing Thanks for your interest, and initial work on this project idea. Please add more detail: ideas how you think you'd implement the respective functionality, pros and cons of different approaches, relevant files in GCC and/or elsewhere, and existing functionality to build upon. If you have specific questions, we'll be happy to look into these. Grüße Thomas > 2. Project Description and Goals > > - > > This project aims to enhance the GCC testing framework for GPU-targeted > code generation by developing a simple "in-memory" file system or an RPC > mechanism for devices to access host files. These features are necessary to > support file operations in GPU test cases that currently fail due to the > lack of I/O support. > - > > Key Deliverables: > - > > Implement a volatile, in-memory file system (initially empty or with > preloaded files). > - > > Extend test harness functionality to handle additional test case > files. > - > > Investigate and, if feasible, implement an RPC mechanism to enable > device-host file interactions. > - > > Test and document the changes for seamless integration into the GCC > framework. > > 3. Why This Project is Worthwhile > > - > > Testing infrastructure is critical for ensuring the robustness of > GPU-targeted code generation, especially in HPC workloads where GPUs > dominate. By addressing this gap in GCC, the project enhances its utility > for developers using Nvidia and AMD GPUs in high-performance computing. > - > > With the growing adoption of OpenACC/OpenMP offloading and the rise of > GPU-based workflows, this improvement ensures GCC remains a competitive and > reliable compiler for modern heterogeneous hardware > > 4. Introduction and Skills > > - > > Who I Am: > My name is Ambika Sharan, and I am a Computer Science and Data Science > student at the University of Wisconsin-Madison, graduating in December > 2025. My primary interests lie in high-performance computing (HPC), GPU > programming, and compiler optimization. > - > > Relevant Skills: > - > > Programming Languages: Proficient in C, C++, Python, and Bash. > - > > GPU Programming: Experience with CUDA and OpenMP. > - > > Linux Systems: Advanced knowledge of Linux-based systems and > compiling software from source. > - > > Research Experience: Conducted AI/ML research with Wisconsin Science > and Computing Emerging Research Stars (WISCERS). > - > > Internship Experience: At AMD, contributed to AI/ML initiatives > involving performance engineering and benchmarking. > - > > Why I’m a Good Fit: > My background in HPC, coupled with my experience in low-level GPU > programming and Linux-based workflows, equips me to address the technical > challenges of this project. My ability to work collaboratively with diverse > teams and adapt quickly to new tools and environments ensures I can > contribute effectively to the GCC community. > > 5. Preparation and Research > > - > > Current Progress: > - > > Engaged with the GCC community on mailing lists and IRC to clarify > technical details. > - > > Reviewed the paper "A Modern Compiler Infrastructure for OpenMP" > <https://arxiv.org/pdf/2110.10151.pdf> and relevant GCC documentation. > - > > Built and tested GCC on my local machine, gaining familiarity with > its codebase and test harness. > - > > Next Steps: > - > > Continue engaging with the community for feedback on this application. > - > > Finalize the design for the in-memory file system or RPC mechanism, > ensuring alignment with GCC’s existing architecture.