Submission information
Submission Number: 132
Submission ID: 232
Submission UUID: c90093d2-ef07-4d7e-9379-34d3d771019f
Submission URI: /form/project
Created: Sat, 12/11/2021 - 15:30
Completed: Sat, 12/11/2021 - 15:30
Changed: Wed, 02/26/2025 - 15:44
Remote IP address: 134.88.5.10
Submitted by: Scott Field
Language: English
Is draft: No
Webform: Project
Project Title: Optimization and Parallelization of A Numerical Gravitational-Wave Model Program: Northeast (308) Project Image: https://support.access-ci.org/system/files/webform/project/232/katies-project.png Tags: gravitational-waves (597) Status: Complete Project Leader -------------- Project Leader: Scott Field Email: sfield@umassd.edu Mobile Phone: {Empty} Work Phone: {Empty} Project Personnel ----------------- Mentor(s): Alfa Heryudono (1577) Student-facilitator(s): Katie Rink (1584) Mentee(s): {Empty} Project Information ------------------- Project Description: 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 ------------------------------ Project Deliverables: {Empty} Project Deliverables: {Empty} Student Research Computing Facilitator Profile: {Empty} Mentee Research Computing Profile: {Empty} Student Facilitator Programming Skill Level: {Empty} Mentee Programming Skill Level: {Empty} Project Institution: {Empty} Project Address: {Empty} Anchor Institution: NE-MGHPCC Preferred Start Date: {Empty} Start as soon as possible.: No Project Urgency: Already behind3Start date is flexible Expected Project Duration (in months): {Empty} Launch Presentation: {Empty} Launch Presentation Date: {Empty} Wrap Presentation: {Empty} Wrap Presentation Date: {Empty} Project Milestones: - 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 Github Contributions: {Empty} Planned Portal Contributions (if any): {Empty} Planned Publications (if any): {Empty} What will the student learn?: 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 What will the mentee learn?: {Empty} What will the Cyberteam program learn from this project?: {Empty} HPC resources needed to complete this project?: The student will need access to one GPU. At UMassD we have a shared GPU resource they can use. Notes: {Empty} Final Report ------------ What is the impact on the development of the principal discipline(s) of the project?: {Empty} What is the impact on other disciplines?: {Empty} Is there an impact physical resources that form infrastructure?: {Empty} Is there an impact on the development of human resources for research computing?: {Empty} Is there an impact on institutional resources that form infrastructure?: {Empty} Is there an impact on information resources that form infrastructure?: {Empty} Is there an impact on technology transfer?: {Empty} Is there an impact on society beyond science and technology?: {Empty} Lessons Learned: {Empty} Overall results: {Empty}