--- tags: hpc, inl date: 2017-12-10 --- # Raspberry Pi Cluster For my high school senior project, I built a mini HPC cluster using a few Raspberry Pis. This was an incredible educational experience, as it taught me a great deal about Linux system administration, parallel computing, and programming. ## Inspiration from INL Internship Before completing my senior year of high school, I spent the summer as an intern at INL. I worked in the Advanced Scientific Computing department on a variety of projects. Throughout the summer, I was constantly exploring and learning about how HPC clusters are setup and operated. By the end of the summer, I felt ready to attempt building one myself. This is what inspired my senior project. ## Senior Project Work ### Building the Cluster Following my own intuition (along with the help of LOTS of instructions online), I successfully purchased, assembled, and configured my cluster. Materials I used: - 3 Raspberry Pis - 1 unmanaged 100Mbps ethernet switch - 1 512 GB SSD - 1 tiny server rack (Raspberry Pi sized) - 1 shoebox for a case - Lots of cords, power supplies, duct tape, etc When the cluster was assembled, I set one node up as the head/login node. This node was connected to the hard drive, and shared a filesystem over NFS to the worker nodes. Finally, I ran some of my very own parallelized code on it as a test. See my other blog posts for more details. ### Research & Report Part of the high school senior project was a research paper. I researched the history of parallel computing and its applicability to modern devices of various types. ## Lessons Learned The primary lesson I learned from this experience was that I am extremely interested in pursuing a career in computer programming. I also learned the complexity of configuring and maintaining multiple Linux machines- especially when they are interconnected.