By: Marcelina Nagales (Florida State University)
What an eventful and information-packed week SC21 was!
I lodged with five others in STEM-Trek’s “UbuntuHouse,” which was two adjoined 3BR/3BA condos. There were two full-service kitchens stocked with snacks and breakfast items. A few of us coffee-drinkers congregated in one kitchen each morning, and we often shared transportation to and from the convention center. It was a great way to meet others who were also attending SC that week – we had our own tiny community. While this year’s attendance was 3,200 on-site (UPDATE: SC21 had ~3,200 in-person attendees and ~3,300 remote attendees. ~380 sessions), SC normally draws 10-15,000. I can imagine it would be easy to get lost in the crowd if your work and school colleagues weren’t able to attend. While I attended many great sessions, in this post I’ll share a few of the more memorable highlights.
On Monday I attended the all-day tutorial session titled, “Parallel Computing 101” hosted by Quentin Stout and Christiane Jablonowski from the University of Michigan. My previous experience with parallel computing was from my first year in graduate school where it was only briefly explained in an Introduction to Programming class assignment. Drs. Stout and Jablonowski explained applications for parallel computing with examples from their own research in car crash simulation and climate monitoring. By explaining parallel processes in terms of theory – why it’s beneficial to simultaneously compute the movement of different areas of a car in a car crash simulation or how to divide up a simplified map of the world for different processes – I could more easily conceptualize parallel programming while being slowly introduced to different concepts and vocabulary associated with parallel computation.
Throughout the tutorial, each example raised questions in my mind that were soon answered with the next concept that was introduced. One hands-on example required every audience member to flip a coin until all achieved “heads-up.” This exercise taught us about synchronicity, efficiency, and ideal versus realistic expectations of work accomplished per processor – we were the processors working in parallel. This led to the understanding that the worker/manager analogy in parallel computing could be applied to our coin-flipping tasks. I appreciated the use of code within the tutorial that reflected both the instinctual order of operations and a corrected solution which taught another concept of parallel computing, such as reduction and collective operations of OpenMPI. Despite their constant reassurance that they could not teach us everything about parallel computing in a single day, they provided a holistic overview, basic concepts, and theoretical frameworks as well as right and wrong coding examples in Fortran and C++.
The workshop on Best Practices of HPC Training and Education hosted by SIGHPC in Education was a hybrid workshop where the presenters and most participants were online. The hybrid aspect of the workshop presented issues for the in-person attendees due to some technical difficulties (we later learned that the streaming server had crashed), and there was no easy access to the Zoom chat. This made it difficult for in-person attendees to feel included and connected with online participants as we could not participate in the dialogue without also joining in the Zoom call. Some presentations were recorded videos with a voice overlay rather than being presented in real-time.
Among the talks that I found most interesting was one by Charlie Dey (Texas Advanced Computing Center) who presented, A Novel Approach to Teaching Software Engineering, which showcased TACC’s Software Engineering course at the University of Texas. TACC utilizes Hackathons as a Tool for Advanced Computing Education. I also liked the talk, Tailored Computing Instruction for Economics Majors, presented by Richard Lawrence and Zhenhua He from the High-Performance Research Computing Center at Texas A&M. They framed a re-imagined process for teaching HPC concepts outside of a coding-centric major.
The last talk I attended before going to the SC21 Gala Reception was The Intersection of Ethics and HPC, a panel discussion hosted by Daniel Reed (University of Utah). Panelists included: Cristin Flynn Goodwin (General Manager and Associate General Counsel, Microsoft), Tony Hey (Chief Data Scientist, Science and Technologies Facilities Council, UK), Ellen Ochoa (retired NASA director and astronaut), and Joel Saltz (Distinguished Cherith Professor and Founding Chair, Dept. of Biomedical Informatics at Stony Brook University).
Questions were posed by both Dr. Reed and the audience. This panel’s thesis could be summarized with a quote by Canadian Sociologist Marshall McLuhan – a saying often repeated at the Johnson Space Center, according to Dr. Ochoa. It reminds us that we must do our due diligence to evaluate algorithms for potential unethical abuse and be welcoming in jargon-heavy, exclusive environments, to further understand the impact and responsibility that we hold as an HPC community.
“There are no passengers on spaceship earth. We are all crew.”
– Marshall McLuhan