The Princeton Institute for Computational Science & Engineering (PICSciE) and OIT Research Computing , along with the Center for Statistics and Machine Learning, are announcing a two-week Research Computing Bootcamp held virtually during Winter Break, from January 19-29, 2021.
This two-week virtual bootcamp will introduce some foundational topics, tools, and techniques that underpin modern computational research.
Week 1 covers essentials of research computing. In a series of hands-on workshops, participants will be exposed to some common elements of computing: the command-line; navigating a computing cluster; good practices in software engineering and data visualization; version control; and leveraging numerical and scientific packages in Python, R, and MATLAB. The goal is to get participants conversant with these fundamental skills, both because they are immediately useful and because they furnish a basis for learning more advanced tools and techniques later on.
Week 2 is an intensive introduction to high-performance computing (HPC). After a high-level overview of parallel programming models, of computer architecture, and of the interplay between the two, this second week will consist of longer mini-workshops on more specialized topics: OpenMP, MPI, and GPU programming both for HPC and for machine learning applications.
The bootcamp will consist of a blend of shorter and longer sessions (see agenda), often running in parallel, and ranging from beginner to more advanced in level. Most sessions include hands-on exercises to help reinforce the material presented.
Code of Conduct: All participants are expected to follow the code of conduct described here.
Registration: Open to all members of the Princeton community with an active Princeton NetID. Advance registration is required. A link to the registration form, along with additional registration information, can be found on the Registration page.
Registration is by session – participants can choose sessions a-la carte to build their own learning paths.
Requirements: Like all PICSciE virtual events, the bootcamp requires participants to log into Zoom with their Princeton credentials. Many sessions also require users to have an account on Princeton’s Adroit cluster and to be able to connect to it via SSH (usually, this requires both connecting to a Princeton VPN and having Duo authentication enabled). Details on the above, along with overarching requirements for all PICSciE virtual workshops, are listed on the advance setup guide for PICSciE virtual workshops.
Prerequisites: Prerequisites vary from session to session. Some may have knowledge prerequisites (e.g. facility with Linux or C++ or Python) or may require additional advance steps on the part of participants (e.g. making a Github account, installing RStudio on your laptop, etc). More information about prerequisites can be found in each session’s description on the bootcamp website. Please be sure to complete prerequisites in advance.
Advance Setup Assistance: Handling installation issues and other technical problems during Zoom sessions is logistically challenging, not to mention disruptive. Therefore, THERE WILL BE LITTLE TO NO TECHNICAL TROUBLESHOOTING DURING THE BOOTCAMP!
Instead, PICSciE staff will host a live drop-in “setup assistance session” on Monday January 18 from 3:30 PM – 5:00 PM to help users troubleshoot any technical difficulties before the bootcamp begins.
Zoom information: Zoom information both for the assistance session and for the rest of the bootcamp sessions will be posted both here and on the PICSciE training website closer to the starting date.
Recording of sessions: Many of the bootcamp sessions will be recorded for later consumption, but some will not be. Either way, part of the value of this event (even in the virtual setting) is doing exercises along with peers and having direct real-time access to the instructors for questions. Thus, we encourage people to register for and attend the “live” Zoom sessions if possible.
Finally, users with less experience may want to review the resources below prior to bootcamp:
- Linux tutorial
- Beginners Guide to Python (one for Programmers, one for Non-Programmers)
- C Tutorial
- C++ Tutorial
Questions? Contact email@example.com.