Space Weather
Space Weather studies the effects of solar activity on human life and technology.
Space weather studies the physics of the energetic activity of the Sun, its propagation through the solar system, its interaction with the plasma environment of the planets and its effects on the Earth’s atmosphere, on human life and technology. It has a high societal relevance for its impact on multiple industries (satellite operations, telecommunications, geolocation, electric distribution, space exploration, among others).
During the DEEP projects, KULeuven has developed the particle-in-cell code xPic, which studies the effects of solar plasma on the environment of solar system planets. A suite of Machine Learning (ML) techniques are employed surrounding xPic for the initial conditions of the code, its boundary conditions and for the analysis of the generated data. This space-weather workflow uses already the MSA and runs on the DEEP-EST prototype. The code xPic has two solvers: a field solver for the computation of electromagnetic fields (which runs on the Booster module), and a particle solver for the transport of plasma ions and electrons (which runs on the Cluster module). Terabytes of data are produced in the particle solver. The code AIDApy creates initial conditions for the simulation (using Deep Learning or Self-Organising Maps techniques), and analyses the velocity distribution data of the particles (using Gaussian Mixture Models).
The xPic code has been written in C/C++ and uses MPI for inter-node communications, and OpenMP 4.5 for multi- threading and offloading of kernels to GPUs. The use of additional parallel techniques including PGAS and OmpSs for task-based execution will be explored in DEEP-SEA. The code also uses parallel I/O and resiliency tools, including FTI, SIONlib and SCR. the use of new memory technologies and the effects of data movement between different levels of data storage will be evaluated as well.
AIDApy has been developed in Python and is based on the PyTorch and Scikit-learn ML packages. It uses multiple python modules to download spacecraft data and perform statistical manipulations. The use of multiple levels of memory will be explored in the transfer of data from the xPic particle solver to the Data Analytics module where AIDApy will run. The scalability of the AIDApy tool will be explored from single node applications to multi-node systems.
The xPic & AIDApy workflow will be a test bench to explore multiple technologies from the DEEP-SEA project, including new parallelisation alternatives, offloading acceleration, data flow, performance analysis, job schedulin, and memory management.
The success of the present task will be quantified by the improvement of one or multiple of the following metrics: performance per watt, time to solution, I/O performance, portability.