Spring 2017 MARCC Tutorial Series

This spring I will be teaching a series of tutorials through the Maryland Advanced Research Computing Center (MARCC). Here are the details:

Spring 2017: Introduction to Scientific Computing

Computers, one of the most important tools in science and engineering, find applications in all aspects of academia and industry alike. Though expected to employ this tool effectively, few scientist and engineers have been trained to harness the power at their fingertips, and most could benefit significantly from a high-level exposure to scientific computing methodology. This tutorial series will introduce many computational tools, tricks, and tips that would otherwise take years of trial and error to learn.

Schedule

During the spring semester, we will offer the tutorial series at the Johns Hopkins University Homewood campus:

  • Mondays from 3:00 pm to 5:00 pm in Malone G33, beginning 30 January and ending 1 May
  • Tuesdays from 3:00 pm to 5:00 pm in Bloomberg 462, beginning 31 January and ending 2 May

During the summer, we will repeat the tutorial series at the Johns Hopkins University School of Medicine: details to be announced

Prerequisites

No prior experience is required. Please bring a laptop to participate in the tutorials.

Attendance policy

The tutorial series is designed to build on itself as it progresses and we strongly discourage skipping tutorials. For a smaller time commitment, consider attending one of our training workshops.

Topics

These are the topics that we plan to cover:

  • Week 1: Computer hardware basics (single-user, cluster)
  • Week 2: Connecting to a remote system
  • Week 3: Linux basics (navigation, Bash, Vim, file transfer)
  • Week 4: MARCC environment (lmod, Slurm)
  • Week 5: Code repositories (Git)
  • Week 6: C basics (compiling, linking, debugging, profiling)
  • Week 7: Installing packages/libraries
  • Week 8: Python basics
  • Week 9: Python data analysis
  • Week 10: Data visualization (ParaView)
  • Week 11: Parallelization (OpenMP, MPI, Cuda)
  • Week 12: Data management plans
  • Week 13: LaTeX basics

We reserve the right to modify this schedule as the tutorial series progresses.

Register

Click here to register for this free MARCC Training Series.

New course for Intersession 2017: Introduction to Scientific Computing

I am happy to announce that I will be offering a new course for Intersession 2017 at Johns Hopkins University, entitled Introduction to Scientific Computing (EN.530.391.13). The interactive two-credit course designed to teach upper-level undergraduate students and new graduate students about the true capabilities of their computers–beyond email and internet–will take place from 10 through 26 January 2017.

As with all Intersession courses, Introduction to Scientific Computing will be offered free of charge to students enrolled at Johns Hopkins University for the fall 2015 semester.

Registration for Intersession 2017 opens 6 December 2016 at 07:00. Have a question about the course? Submit a comment below or contact me.

Course description

The most important tool in science and engineering, computers find applications in all aspects of academia and industry alike. Though expected to employ this tool effectively, few scientists or engineers have been trained to harness the power at their fingertips, and most could benefit significantly from a high-level exposure to scientific computing methodology. This course will introduce many computational tools, tricks, and tips that would otherwise require years of trial and error to learn.

This course will be strongly focused on increasing user proficiency with computational resources, such as those provided by the Maryland Advanced Research Computing Center (MARCC) run by Johns Hopkins University.

Prerequisites: none

Schedule: 13:00-16:00 on Tuesday, Wednesday, and Friday 10-26 January 2017

Selected topics

  • Computer hardware basics
  • Computer software basics (compilers, linkers, libraries, etc.)
  • Using Linux (connecting, navigating, text editing, software installation, etc.)
  • Scripting (bash and python)
  • Code development best practices (style, modularity, etc.)
  • Code development tools (repositories, debuggers, profilers, etc.)
  • Introduction to high-performance computing (MARCC and other shared systems)
  • Parallelization (OpenMP, MPI, Cuda)

New appointment: Research Scientist

whiting.logo.small.vertical.blue-croppedI am excited to announce that I have accepted an appointment as an Assistant Research Scientist in the Department of Mechanical Engineering at the Johns Hopkins University. In this new role, I will work extensively within the Maryland Advanced Research Computing Center (MARCC; pronounced Marcy) to support the development and implementation of high-performance computing applications used for transformational research within the University and beyond. As a natural extension of my Ph.D. work, I look forward to developing new computational capabilities and to teaching users about this outstanding high-performance computing resource.

marcc-hardware
Some of the hardware that comprises MARCC’s Bluecrab cluster, as viewed during a tour of the facility with my Fall 2015 course.
sed-duct-combined
An example of a particle-laden flow simulation performed using Bluebottle on MARCC.