Skip to content

MPI.js

MPI, now on the web.

The vision

Our mission is to revolutionize impractical distributed computing by providing a browser-based MPI implementation that empowers researchers and developers to seamlessly explore parallel programming concepts and deploy distributed applications across diverse platforms.

For developers

Get Started

Github

Roadmap

  • Make a nice documentation website
  • Implement the following APIs
  • Basics
    • MPI_Init
    • MPI_Finalize
    • MPI_Abort
    • MPI_Comm_size
    • MPI_Comm_rank
  • P2P
    • MPI_Send
    • MPI_Isend
    • MPI_Recv
    • MPI_Irecv
  • Barriers & Broadcasts
    • MPI_Barrier
    • MPI_Bcast
    • MPI_Ibcast
  • Gathers
    • MPI_Gather
    • MPI_Gatherv
    • MPI_Allgather
    • MPI_Allgatherv
  • Scatters
    • MPI_Scatter
    • MPI_Scatterv
  • Reduces
    • MPI_Reduce
    • MPI_Allreduce
  • Write the tool that transplants user JS code into runnable MPI.js code
  • Compare different communication methods (channels/WebSockets) between local threads
  • Use WebSockets to connect MPI nodes across multiple computers
  • Optimize for memory usage by using clever message-routing techniques
  • Run benchmarks on all variations of our API
  • Make a live dashboard that shows how many msgs/sec are happening in real-time

About us

We are the-parallel-gods

Sean and David

Support & warranty

lmao