I attended the International Conference for High Performance Computing, Networking, Storage and Analysis, colloquially known as SC16, from November 13-16, 2016. It is co-sponsored by the IEEE and ACM. At this conference I presented my ongoing research on solving extreme-scale electromagnetic engineering problems, did extensive networking, and attended numerous technical talks and panels on a field that was relatively new to me. This conference was a lot larger than the conferences I have attended in the past. As an example, the International Symposium on Antennas & Propagation has a few hundred attendees (you might ask me to be more specific, there’s no need), whereas the SC16 conference had north of 10 thousand attendees. This presented a huge logistical problem for me as I began to sort out what to do, where to go, what to see, and so on. Below I give an accounting of my experiences there and some of the major learning opportunities I had.

Day 1 -- Travel and Registration

Not much exciting to report here. I took a direct flight to Salt Lake City on Delta. I used the public transit, train, to get from the airport to the hotel. Checked into the hotel. Completed my registration with the conference, and received the requisite conference swag. I got a backpack, water bottle, and the proceedings. There were also some print outs like a map and conference program. I then walked through the conference venue, Salt Palace Convention Center, and began to feel overwhelmed. I got in contact with the industry sponsor, who was very helpful throughout my first time at this conference, and was able to get some good advice from him on how to approach a conference of this size: pick what’s important, but be ready to go to something that sparks your interest.

Day 2 -- Panel discussions

On Monday morning I attended a series of talks designed specifically for students. The first talk was on career paths in high performance computing and was given by both practitioners and researchers whose respective fields use supercomputing. The first speaker was Dorian Arnold, a professor at the University of New Mexico’s Computer Science department. The central theme in his talk was that once you decide what you want to do with your career you should be very deliberate in the choices you make. The next speaker was Ron Brightwell, a research and development manager at Sandia National Laboratories. His main takeaway points were that the relationship that you have with your advisor is extremely important, that effective communication and teamwork are more important than you would think, and that the best way to establish your career is to publish your research and review other peoples’ submitted work. The next speaker was Arthur “Barney” Maccabe. His two key takeaways were that it’s okay to change your mind throughout your career, but that when you decide to get a certain degree you should have a purpose for that degree. His biggest recommendation for students was to do productive things outside their field, like read books on leadership, deep thinking, finance, and so on. He also encouraged students to make mistakes and ask for apologies later. The final speaker was Hai, a research scientist from Los Alamos, whose main point is that supercomputing is a very interdisciplinary study. She is a computational plasma physicist and frequently mentioned how she has to bridge the gap of communication between physicists and computer scientists.

The next panel discussion was held in the same room, and included a slightly different group of experts, but was very similar. The previous panel discussed ways you could set yourself up to be successful largely through the personal stories of others, and this panel focused on some specific tasks that all students should partake in to be successful. One of the common themes was that practice makes perfect, and the panelists specifically mentioned writing and speaking a lot, among other things. They also discussed that it’s important to understand what you’re doing at multiple levels of depth. For example, you must understand how to debug a single line of code, while at the same time understanding the larger societal problems you are attempting to tackle. Finally, they gave some metrics that people are looking for when they hire you, and emphasized the importance of conference publications in HPC.

The final panel discussion of the day was given by a few students, and one postdoc, on how to get involved in the conference as a student. They had recommended that research posters were a very easy entry point into SC16 since the acceptance rate was pretty high compared to the technical papers. Research posters are meant as a work-in-progress publication rather than as a completed works publication. Finally, they listed off several different SC activities designed for students to work for whether it be designing the network, SCiNet, or helping their research advisors reviewing papers. Birds of a Feather sessions were also mentioned as a good way for students to get recognized by the HPC community.

The final task of the day for me was to hang my poster at the designated location (as you can see this was probably the week’s biggest challenge), and to socialize in the exhibition hall with my project’s industry sponsor. I stopped by several different corporate entities, and the one that stuck out was Nvidia’s booth. They were demoing their new GPU computing capabilities and had a few computers set up to teach students how to program. This is a potential new skill I am interested in learning in my future.

Day 3 -- Presentation

I began the day with some more panel discussions. The first one I attended was on reproducibility in HPC. The common theme I took away from this was that perhaps a bit-by-bit comparison of output results is not the best way to evaluate the correctness of a code. For one, no code we write can ever be completely accurate; we will always have both roundoff and truncation error, plus any number of physical modeling approximations. Floating point calculations are also handled differently on different computing architectures. Finally, the point of good software development practices, for example source control, was emphasized as a very important part of quantifying the error, and understanding its sources. Software carpentry was a course that was mentioned that is worth investigating, another fellow computational physicist has also recommended it to me in the past.

The other panel talk I attended was one that discussed many national funding initiatives towards HPC. The NCSI is a program that combines many other smaller funding agencies into one conglomerate agency. This initiative was taken because it was acknowledged that there were both shared computational resources and data across many organizations. The purpose of this funding program, from the Executive Branch of the US government, is to bring supercomputing into the exascale age.

The most important part of the day was my poster presentation. Overall, it went well. I had a variety of types of people attend my poster: professors, research scientists in the national labs, and other graduate students. Sometimes my ideas were challenged, I was given new ideas, or people were asking for advice on their own code. I also made sure to provide methods for follow up with some of the people who stopped by; I was also able to give a few people free drink tickets for the exhibition hall. After the poster presentation I had dinner with the corporate sponsor of my research and a research scientist in the Naval Research Lab.

Day 4 -- Career fair & Travel

On the final day I went to the career fair for students and postdocs. I met with representatives from LBNL, ANL, NCSA (at UIllinois), and from the AFRL DSRC. I also discussed the possibility of remote work in the future with my industry sponsor. All in all, things went very well. Most people I met with had summer internship programs available for me to consider. However, the best contact I made was with Argonne National Labs who recommended I get in touch with a professor at the University of Chicago for a possible postdoc opportunity that was currently posted. I also briefly learned about the tool called Kokkos, developed at Sandia National Labs, and how it can help my own research. I took an Uber to the airport and traveled home without any problems (except for some really bad turbulence in the Rockies) on an indirect flight on Southwest.

Summary

All in all, I was glad to have participated in this experience. It helped to broaden my outlook on my career and helped to refocus some of my research efforts towards what’s most important. It also taught me the importance of interdisciplinary collaboration. Someone who I attended the conference with told me afterwards that, “you may be thinking about the effects of placing chemicals A and B into a reactor, but someone has already solved that same problem with cats.”

Edited for clarity and added links on 12/01/2016. A few things removed on 01/08/2016.