Skip to content
Howard Pritchard edited this page Apr 19, 2019 · 5 revisions

Season of Docs 2019 - Projects for Open MPI Documentation

This wiki page describes project ideas for Open MPI for Google's Season of Docs 2019.

The Open MPI Project is an open source implementation of the Message Passing Interface(MPI) that is developed and maintained by a consortium of academic, research, and industry partners. Open MPI is therefore able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to build the best MPI library available. Open MPI offers advantages for system and software vendors, application developers and computer science researchers.

MPI is used primarily, but not exclusively, in the area of High Performance Computing. Typically HPC applications are compute intensive, and often work with data sets and computer simulation sizes that require many computers to complete calculations in a practical amount of time. Often the calculations being carried out on the individual computers are tightly coupled with the calculations being carried out on the other computers working on the same simulation, meaning that they need to be able to exchange data between the individual processes frequently during the course of a calculation. It is not atypical for such calculations to require millions of data exchanges per second. This puts a special burden on the software are responsible for managing these data exchanges. MPI implementations such as Open MPI are designed to fill that role.

Although we have many active developers working on the Open MPI source code and build infrastructure, documentation development and maintenance both for end users as well as new developers has lagged behind work on the implementation itself. We have a number of documentation project ideas that may be of interest to participants in Google's Season of Docs. The proposed projects below are ranked in order complexity:

Modernize the Open MPI FAQ pages

The project's FAQ pages are in need of significant modernization. Among the issues with the FAQ pages currently are:

  • quite a lot of outdated content that either needs to be removed or updated. We realize a lot of the content is pretty technical and would require a good deal of mentoring to get started
  • not easy to search. It would be great if we could have the FAQ reorganized to be context based and have a query facility for faster lookup.
  • improve FAQ portability to other web page frameworks and publishing schemes.
  • FAQ like data has ended up on the project's GitHub wiki pages. This data should ideally be incorporated in a refactored FAQ.

This project should be doable within the timeframe of Season of Docs.

Refactor the Open MPI Contributing to Open MPI web pages

The contributing to the Open MPI web pages on the project's main website has also gotten dated. A lot of content of interest to developers is now incorporated in a set of some loosely coupled wiki pages which are not that easy to navigate. These deficiencies have contributed to the difficulty developers new to the Open MPI project have encountered trying to get up to speed on the code base and procedures for getting bug fixes and enhancements into the code base.

This proposed project would focus on reworking the contributor section within the current Open MPI webpage framework to be more helpful to newbie Open MPI developers. It should be doable within the timeframe of Season of Docs.

Modernize the Open MPI web site

The Open MPI web site is somewhat dated in appearance and organization. It would be great if the project could have a more modern appearance. For example, sister projects to Open MPI including PMIx and the middleware testing tool ([MTT])(https://open-mpi.github.io/mtt/) the Open MPI project uses have much more modern appearances.

This project would be too large to complete in the Season of Docs timeframe. Rather than a completed website, the goal of this project would be to setup one or two proto-types of the web-site that members of the Open MPI project could evaluate. The existing website has some significant functionality that would be need to be supportable by a proposed website framework.

Clone this wiki locally