Project area/S
- Fast Transients and Pulsars
- Data Intensive Astronomy
Project Details
The Murchison Widefield Array (MWA) is Australia’s precursor for the international Square Kilometre Array (SKA). Its imminent upgrade to Phase 3 opens up new vistas for studying pulsars and other fast transients (e.g. Fast Radio Bursts, cosmic rays, and reflections from near-Earth satellites and space debris), a headline theme for SKA science. To fully exploit the MWA’s new high-time resolution mode for all these different science cases, a new data processing subsystem is being developed, with flexibility and versatility being amongst the most important considerations. This subsystem, which will be initially deployed on Pawsey’s ~750 TeraFLOPS Garrawarla NVIDIA GPU compute cluster, will be the primary workhorse for processing high time resolution data from the upgraded MWA .
This project will involve working alongside software developers to deliver a product that is fast, flexible, extendible, and portable. This may include (depending on the state of development at the time the project starts, and the skills and inclination of the student)
1. Writing GPU kernels to extend the subsystem’s functionality,
2. Developing/Improving algorithms for dynamic (i.e. run-time) memory allocation and management
3. Benchmarking (existing and new) code on Garrawarla,
4. Building containers (Docker/Singularity) for portability,
5. Exploring alternative GPU architectures, such as the AMD GPUs that will be coming online in 2022 with Pawsey’s Setonix cluster
Student Attributes
Academic Background
Required:
- A strong background in computing and programming
Desirable (but not required):
- Experience with GPUs and/or other code parallelisation paradigms
- Experience with supercomputers
- A background in astronomy and/or physics
Computing Skills
- C or other low-level language
- Linux (or similar *nix) systems
Training Requirement
- Git
- Compiling, running, and benchmarking CUDA code
Project Timeline
- Week 1 Inductions and project introduction
- Week 2 Initial Presentation
- Week 3 Running and benchmarking existing code on a test data set
- Week 4 Devising software strategies
- Week 5 Code/algorithm development
- Week 6 Code/algorithm development
- Week 7 Integration into the main sub-system
- Week 8 Benchmarking improved code on the test data set
- Week 9 Final Presentation
- Week 10 Final Report