1. Raspberry Pi Cluster
Description: The project will provide an opportunity to sharpen basic hardware and software skill. Topics covered will include Linux, compilers, parallel programming, and performance tuning applications.
No prior experience is required!
Learning Goals:
- Build a Raspberry Pi Cluster to run popular HPC benchmarks/applications and distributed ray tracing.
- Compete against international teams in the Raspberry Pi Cluster competition.
Mentors: Francisco Gutierrez, Matei-Alexandru Gardus, Anish Govind
Time Requirement: 1-3 hours/week
2. YUGRUG (Yuchen’s UnderGraduate Rust User Group)
Description: YUGRUG is project that aim to help strengthen programming skills and form practical understanding of programming languages by learning Rust (a memory-safe programming language). In addition, Rust projects include systems programming and computer networking, which means participant will learn to write tools for the club and for future Student Cluster Competitions.
Prior programming experience is recommended!
What is Rust?
- A performant, safe programming language without a garbage collector
- Invented in 2006, 1.0 in 2015, and Rust Foundation formed in 2021
- Used in Firefox, Dropbox, Cloudflare, and soon the Linux kernel
Learning Goals:
- Build a distributed ray tracer
- Generate system health reporting
- Practice automatic real time power tuning
- More to come!
Mentors: Yuchen Jing, Matei-Alexandru Gardus
Time Requirement: 3 hours/week
3. Mesh Networking
Description: In this project, we will be utilizing a test cluster in SDSC to get MPI working over RoCE and eventually Infiniband in a switchless configuration
No prior experience is required!
Learning Goals:
- Learn Mellanox cli utils & MPI programming
- Compile ompi and possibly other implementations of MPI to work in a mesh configuration
- Setup mpi to work over RoCE and eventually Infiniband on both switchless and switched network configurations
Mentors: Khai Vu, Stefanie Dao
Time Requirement: 2-4 hours/week
4. Ultra Fast Storage Access
Description: The project aims to develop a deep understanding of disk access performance and filesystem bottlenecks.
Prior Experience: Linux Skills, Basic Knowledge of File systems and Disk Access
Learning Goals:
- Understand File system bottlenecks
- Learn NUMA computer architectures and I/O workload
- RAID, SSD Hardware and PCIe switching
Mentors: Michael Granado
Time Requirement: 2-4 hours/week
5. RISC-V FPGA
Description: RISC-V FPGA project is an introduction to computer architecture and FPGA programming. Participants will practice with hardware description languages and HLS frameworks, synthesizing the HDL and setup system software on the FPGA.
Learning Goals:
- Build a remotely accessible multi core RISC-V student server with controllable memory and a shared disk over fabric (NVMEoF)
Mentors: Kira Tran, Davit Markarian, Matthew Mikhailov
Time Requirement: 2-4 hours/week