MuMMI Framework
MuMMI (Multiscale Machine-Learned Modeling Infrastructure) was developed to create ML-driven, autonomous, multiscale simulation ensembles to study the interactions of RAS proteins and RAS-RAF protein complexes with lipid plasma membranes. This framework was developed as part of the Pilot2 project of the Joint Design of Advanced Computing Solutions for Cancer funded jointly by the Department of Energy (DOE) and the National Cancer Institute (NCI).
I co-led the development of MuMMI, focusing on developing the workflow, AI models, and integration of the various simulation codes.
- Code: github.
- Papers: SC 2019 and SC 2021.
- Technologies:
- Python
- TensorFlow, Keras, Horovod
- GPU-enabled MD simulation Tools, CUDA
- HPC resource managers: Flux
- Hardware: NVIDIA Tesla GPUs, IBM PowerPC, Sierra and Summit supercomputers
Adaptive Multilinear Meshes (AMM)
AMM represents a new paradigm datastructure for volumetric data by combining novel spatial hierarchies with mixed-precision representation to offer new, lossless data reduction strategies. AMM is built upon a new “adaptive octree” datastructure that is more flexible than the standard octree, providing reduced branching in the hiearchy, effectively reducing the data footprint. AMM can also automatially identify and reduce the number of bits needed to represent the data, further reducing the in-memory size of the data.
I developed this award-winning technology as part of my research at LLNL.
MemSurfer
MemSurfer is an efficient and versatile tool to compute and analyze membrane surfaces found in a wide variety of large-scale molecular simulations. MemSurfer works independent of the type of simulation, directly on the 3D point coordinates, and can handle a variety of membranes as well as atomic simulations. MemSurfer provides many in-built analysis tasks, such as computing the membrane curvature, density and normals of lipids, and area per lipid. More importantly, MemSurfer provides a simple-to-use Python API that may be easily used/extended to perform other types of analysis.
- Code: github.
- Paper: JCTC 2019.
- Technologies:
- Python, C++, Cmake, VTK, CGAL, boost, eigen
- Computational topology, Computational geometry, Surface reconstruction
TopoMS
TopoMS is a computational tool for topological analysis of molecular and condensed matter systems, including the computation of atomic volumes and charges through the quantum theory of atoms in molecules (also known as Bader analysis), as well as the complete molecular graph. With roots in techniques from computational topology, and using a shared-memory parallel approach, TopoMS provides scalable, numerically robust, and topologically consistent analysis.
DynIm
The DynIm framework offers an almost-real-time sampling of data through a dynamic importance scheme. DynIm uses FAISS as a vector database to store encoded data and perform approximate nearest neighbor searches.
- Code: github.
- Paper: Nature Machine Intelligence 2021.
- Technologies:
- Python, Numpy, FAISS
CallFlow
CallFlow is an interactive visual analysis tool for exploring performance profiles of application codes. CallFlow provides a high-level overview of Calling Context Trees (CCTs) together with semantic refinement operations to progressively explore them. CallFlow also facilitates analysis of ensembles of application runs. The development of CallFlow was led by my student, SP Kesavan.
Earlier open-source research codes
- Numerically robust critical point detection in vector fields defined on simplicial meshes using the notion of Simulation of Simplicity (SOS) [C++, Qt].
- Visualization and animation of atom trajectories in simulated systems, with focus on the representation of uncertainty in the data [C++, Qt].
- Computation of Jacobi Sets of scalar functions as part of topological analysis and simplification of data [C++].
- Computation of the Natural Helmholtz-Hodge decomposition of 2D and 3D vector fields [Python, C++].