SIParCS 2015- Yau

Albert Yau, Stony Brook University

PyStormTracker: A Parallel Object-Oriented Cyclone Tracker in Python

(Slides) (Recorded Talk)

Cyclones, which are traditionally defined as synoptic scale moving low pressure systems, are responsible for much of the day-to-day weather variability and extreme weather events at mid-latitudes. It is of great interest to study and understand cyclone track dynamics and variability. Here at the Application Scalability and Performance (ASAP) Group, we have developed a parallel Python package, named PyStormTracker, which locates cyclone centers from model output and compiles a list of cyclone tracks. The package is designed from ground up using an object-oriented approach and utilizes the scientific computing library SciPy and parallel message passing library MPI4Py. Cyclone detection is accelerated by distributing file I/O and cyclone detection across different computing nodes and then joining the tracks as the final step. We have evaluated the performance of the package with CESM1 output on NCAR’s Yellowstone cluster.

Mentors; John Dennis and Kevin Paul, CISL TDD