Next-generation gravitational-wave (GW) detectors, such as the Laser Interferometer Space Antenna (LISA), will detect GW signals from extreme mass-ratio inspirals. High fidelity and fast GW models are essential for achieving the full scientific potential of LISA. We have developed a high-accuracy, data-driven (surrogate) model for LISA-type sources. The code is currently in a Jupyter notebook, but to enable data analysis studies, we require the model to operate as an optimized, stand-alone library. This project aims to accomplish this goal by porting the model into two publicly available, community-driven packages GWSurrogate and the Black Hole Perturbation Toolkit. In this project, the student will port the model to these existing codebases before optimizing. The model data will be stored in HDF5 file format. One of the main computational bottlenecks is likely to be the large matrix-vector multiplication required to compute each harmonic mode. The student will explore offloading this cost to a GPU through the cupy package and parallelization over mode computations. Code profiling will also be carried out to identify other parts of the code that could benefit from further optimizations.
Project Information Subsection
{Empty}
{Empty}
{Empty}
{Empty}
{Empty}
{Empty}
{Empty}
{Empty}
NE-MGHPCC
{Empty}
No
Already behind3Start date is flexible
{Empty}
{Empty}
{Empty}
{Empty}
{Empty}
Milestone Title: Port model to BHPTK Milestone Description: Model should be fully implemented into the black hole perturbation toolkit codebase so it can be used by other researchers. Completion Date Goal: 2022-01-14
Milestone Title: Port model to GWSurrogate Milestone Description: Model should be fully implemented into the GWSurrogate package so it can be used by other researchers. Completion Date Goal: 2022-02-11
Milestone Title: Profiling results Milestone Description: Using a profiler for Python, profile each implementation and identify slowest portions of the code Completion Date Goal: 2022-03-04
Milestone Title: Optimization Part 1 Milestone Description: Depending on profiling results, explore benefits of paralleization. This will include either cupy (for linear algebra on a GPU) or multiprocessing parallelization. We will choose which to persue based on profiling results. Completion Date Goal: 2022-03-31
{Empty}
{Empty}
{Empty}
The student will learn valuable skills in writing open-source software, contributing to an open-source project through github, profiling Python code, optimizing Python code, and parallelization techniques. The student will also use a GPU hardware accelerator as one of the parallelization techniques
{Empty}
{Empty}
The student will need access to one GPU. At UMassD we have a shared GPU resource they can use.