Previous Projects (outdated)

  • MPICH - A high-performance, portable implementation of the Message Passing Interface (MPI). MPICH and its derivatives form the most widely used implementations of MPI in the world. My interests especially focus on the research and development of MPI one-sided communication model.
    [MPICH website] [MPICH on Github]
  • OpenSHMEM over MPI - OpenSHMEM is a Partitioned Global Address Space (PGAS) library that provides targeted and specialized functionality for high performance communication, while MPI is a low-level communication library focusing on completeness of features and generalization. This project aims to analyze and optimize the OpenSHMEM implementation on top of MPI from both performance and semantics aspects. OSHMPI is the reference implementation of OpenSHMEM over MPI.
    [OpenSHMEM website] [OSHMPI website] [OSHMPI on Github]
  • Beehive - Beehive is a dynamic execution environment for supporting irregular MPI applications. It focuses adaptive MPI progress management, dynamic computation load balancing and communication overlapping, as well as lightweight checkpointing and migration for power management and resilience. I am leading the research and development of the parallel runtime system in collaboration with operating system (OS) experts from RIKEN Japan.
    The Beehive project includes two software products:
    • Casper - A portable and adaptive process-based asynchronous progress model for MPI communication. [Casper website] [Casper on Github]
    • Process-in-Process (PiP) - A process execution runtime with portable virtual address spacing sharing. [PiP on Github]