Lattice Boltzmann Method
LBM (Lattice Boltzmann Method) is a class of computational fluid dynamics methods for fluid simulation. Multiphase LBM, used by a team led by Dr. James McClure of Virginia Tech, calculates multiphase flows in a porous medium at length scales that range from micrometers to kilometers. We have developed a hybrid multiphase LBM on the HokieSpeed supercomputer that uses CPU cores for the mass transport concurrent with GPU solution of the momentum transport.
The figure shows the outcome of the flow prediction for the trapped oil in a porous medium at length scales of up to kilometers. Our optimizations speedup the application and obtain results in several minutes.
EpiSimdemics is a high-performance simulation application that has been used to predict the spread of epidemic diseases through a population. The group led by Dr. Wu-chun Feng performed an in-depth analysis of the different components of the EpiSimdemics algorithm, understood their suitability for the CPU and GPU computational components of HokieSpeed and optimally implemented the algorithm for the right architecture. We also developed supporting tools and libraries to further improve the application’s performance and enhanced the programmer’s productivity while implementing such complex algorithms on emerging hardware.
Impact: The EpiSimdemics simulation tool can be used to understand the effects of different healthcare policies on the degree of disease spread across USA. Our optimizations ensure that we obtain simulation results in few minutes.
The figure shows the outcome after running the EpiSimdemics simulation to study a hypothetical disease spread across portions of the Delaware state. The red indicates infected areas while the yellow indicates recovered or uninfected people.
Finite Difference Method
Finite Difference Methods are a class of numerical methods which are used in a variety of scientific domains such as Computational Fluid Dynamics, Seismology modeling Finance, and others. The solutions are known to be computationally intensive and often require hours to days for simulations to run.
The group led by Dr. Wu-chun Feng seeks to accelerate the seismology simulations using GPUs on HokieSpeed. We develop methods to aid domain scientists to visualize the simulations in real-time, while being accelerated by GPUs, through a technique also called as 'In-situ visualization'. Our research shows that, we were able to perform the same seismology computation, which otherwise would take a whole day (24 hours) to complete, within an hour on 128 nodes using GPUs.
HokieSpeed has also served as a platform for the development and testing of experimental methods to exploit heterogeneous resources. The CoreTSAR project explores the potential of directive based parallel programming to target an entire heterogeneous compute node rather than specific accelerators. As an extension to the Accelerated OpenMP programming model, CoreTSAR allows a single parallel region to target the CPU cores and multiple GPUs simultaneously without manual data or code splitting by the user. Combining such flexibility with an intelligent runtime system allows codes to be ported to use all of a HokieSpeed node quickly and safely, while naturally allowing it to scale up or down to more or less GPUs as available.