Fluctuation X ray Scattering Real-Time App |SciPy2020| Dujardin, Slaugther, Donatelli, Zwart & Yoon
Linac Coherent Light Source (LCLS) at the SLAC national accelerator laboratory is an X-ray Free Electron Laser enabling scientists to take snapshots of single macromolecules to study its structure and function. Its upgrade, LCLS-II, will bring us from 120 to 1 million pulses per second, entering a new paradigm where it collects more data than can be stored on disk. At this rate of approximately 100 GB/s, standard techniques break down and High Performance Computing is required.
We present here a Python application for Fluctuation X-ray Scattering (FXS) experiment data analysis being developed to run on supercomputers in near real-time while an experiment is taking place. We will discuss how we accelerated the most compute intensive part of the application by a factor of 18 compared to basic numba acceleration.
To parallelize and scale the application, we use Pygion, a Python interface for Legion task-based programming model. Pygion with the help of some annotations, manages the parallelization. Compared to an equivalent MPI implementation, it offers a much better scaling out of the box.
*****************
https://twitter.com/enthought
https://www.facebook.com/Enthought/
https://www.linkedin.com/company/enthought