# Install open-mpi with Homebrew, apt, MacPorts

High performance message passing library. Version 5.0.9 via Homebrew; verified 2026-07-03.

## Install

```sh
sudo av install brew:open-mpi
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install open-mpi
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install pcc
```

  Evidence: MacPorts ports tree: lang/pcc/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install pcc
```

  Evidence: Debian stable package indexes: pcc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

## Package facts

- **Package key:** brew:open-mpi
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/open-mpi>
- **Version:** 5.0.9
- **Source summary:** High performance message passing library
- **Homepage:** <https://www.open-mpi.org/>
- **Repository:** <https://github.com/open-mpi/ompi>
- **Upstream docs:** <https://docs.open-mpi.org/>
- **License:** BSD-3-Clause-Open-MPI AND mpich2
- **Source archive:** <https://download.open-mpi.org/release/open-mpi/v5.0/openmpi-5.0.9.tar.bz2>
- **Last updated:** 2026-07-03T04:00:01Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- mpiCC (cli)
- mpic++ (cli)
- mpicc (cli)
- mpicxx (cli)
- mpiexec (cli)
- mpif77 (cli)
- mpif90 (cli)
- mpifort (cli)
- mpirun (cli)
- ompi_info (cli)
- opal_wrapper (cli)
- oshrun (cli)
- pcc (cli)
- prte (cli)
- prte-term (cli)
- prte_info (cli)
- prted (cli)
- prterun (cli)
- prun (cli)
- mpiCC (alias)
- mpic++ (alias)
- mpicc (alias)
- mpicxx (alias)
- mpiexec (alias)
- mpif77 (alias)
- mpif90 (alias)
- mpifort (alias)
- mpirun (alias)
- ompi_info (alias)
- opal_wrapper (alias)
- oshrun (alias)
- pcc (alias)
- prte (alias)
- prte-term (alias)
- prte_info (alias)
- prted (alias)
- prterun (alias)
- prun (alias)

## Dependencies

- gcc
- hwloc
- libevent
- pmix
- prrte

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 5.0.9
- Package-manager updated: 2026-07-03
- Local data: ok
- Upstream repository: https://www.open-mpi.org/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

Open MPI is a production-grade, open-source implementation of the Message Passing Interface specification used for parallel and distributed computing. It matters because MPI remains one of the basic portability layers for HPC applications, and Open MPI packages the compiler wrappers, launchers, runtime services, and transport components that make MPI jobs practical on clusters and workstations.

### Project history

The project was formed as a consolidation of earlier MPI implementations rather than as a small single-codebase fork. The Open MPI documentation names LAM/MPI, LA-MPI, and FT-MPI as the three prior implementations merged into Open MPI, with the University of Stuttgart team joining through FT-MPI work in late 2004; the project FAQ also describes PACX-MPI contributions as part of the initial technology base.

That origin shaped the project's design goals: a clean new implementation, peer review, vendor and researcher participation, and a component architecture that lets network, scheduler, and platform support evolve without forcing every downstream user to fork the whole MPI stack.

### Adoption history

Open MPI grew into one of the standard MPI choices for Linux, macOS, BSD, and HPC software stacks because it provided a permissively licensed implementation with active involvement from academic labs, vendors, and users. The project's own FAQ emphasizes third-party components and commercial or closed-source plugin compatibility as intentional collaboration mechanisms.

Package managers expose Open MPI not only as a library but as a toolchain surface: Homebrew installs compiler wrappers such as mpicc and mpicxx alongside launch commands such as mpirun and mpiexec. That packaging model reflects how developers encounter MPI in practice: by compiling code through wrappers that inject the right headers, libraries, and runtime settings.

### How it is used

Developers use Open MPI to build MPI programs with wrapper compilers, launch multi-process jobs, inspect runtime configuration with ompi_info, and integrate jobs with cluster networking and process managers. Operators care about the runtime's transport and component selection because MPI performance depends heavily on the fabric, scheduler, host layout, and collective-communication choices.

On a laptop or CI machine Open MPI is often used to test parallel code paths at small process counts. On clusters it becomes part of the site software stack, where application teams expect stable mpirun/mpiexec behavior and admins tune the runtime for the interconnect and batch system.

### Why package nerds care

Open MPI is package-nerd interesting because a formula is not just shipping a library: it ships a parallel-programming ABI, compiler wrappers, launchers, runtime daemons, Fortran/C/C++ surfaces, and configuration files. Small packaging changes can affect build reproducibility, linked MPI ABI compatibility, and runtime behavior across many scientific applications.

Its history also explains why it has many moving parts. The project's component model and merger lineage were a deliberate answer to duplicated MPI implementation work, so packagers inherit a system designed to absorb many platforms and hardware transports behind one familiar MPI interface.

### Timeline

- 1994: MPI-1.0 was published by the MPI Forum, establishing the standard API family that Open MPI implements.
- Late 2004: the University of Stuttgart team became effectively part of the Open MPI effort through FT-MPI work, according to Open MPI's history page.
- After version 1.0: the project expanded beyond the founding implementation teams to broader contributor participation, according to the Open MPI FAQ.
- 2026-06-13: the Open MPI FAQ page used for this enrichment was last modified by the project.

### Related projects

- LAM/MPI, LA-MPI, FT-MPI, and PACX-MPI are the important historical parents of Open MPI.
- The MPI Forum is the standards body whose MPI specifications define the programming model Open MPI implements.

### Sources

- <https://docs.open-mpi.org/en/main/history.html>
- <https://formulae.brew.sh/formula/open-mpi>
- <https://github.com/open-mpi/ompi>
- <https://www.mpi-forum.org/docs/>
- <https://www.open-mpi.org/faq/?category=general>


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.openmpi/mca-params.conf, $prefix/etc/openmpi-mca-params.conf
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** open-mpi
- **Aliases:** openmpi
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Conflicts With:** mpich
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- MacPorts - pcc: installed executable or alias match | MacPorts ports tree: lang/pcc/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Debian apt - pcc - 1.2.0~DEVEL+20220331-1: installed executable or alias match | Debian stable package indexes: pcc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Portable C Compiler | http://pcc.ludd.ltu.se/
- Ubuntu apt - pcc - 1.2.0~DEVEL+20220331-1: installed executable or alias match | Ubuntu 24.04 LTS package indexes: pcc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Portable C Compiler | http://pcc.ludd.ltu.se/


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [gcc](https://www.automicvault.com/pkg/brew/gcc/) - Runtime dependency declared by Homebrew.
- [hwloc](https://www.automicvault.com/pkg/brew/hwloc/) - Runtime dependency declared by Homebrew.
- [libevent](https://www.automicvault.com/pkg/brew/libevent/) - Runtime dependency declared by Homebrew.
- [pmix](https://www.automicvault.com/pkg/brew/pmix/) - Runtime dependency declared by Homebrew.
- [abyss](https://www.automicvault.com/pkg/brew/abyss/) - Popular package that depends on this formula.
- [adios2](https://www.automicvault.com/pkg/brew/adios2/) - Popular package that depends on this formula.
- [cp2k](https://www.automicvault.com/pkg/brew/cp2k/) - Popular package that depends on this formula.
- [damask-grid](https://www.automicvault.com/pkg/brew/damask-grid/) - Popular package that depends on this formula.
- [adaptivecpp](https://www.automicvault.com/pkg/brew/adaptivecpp/) - Shares av.db curated category or tags: cli, developer-tools, parallel-computing.
- [gearman](https://www.automicvault.com/pkg/brew/gearman/) - Shares av.db curated category or tags: cli, developer-tools, distributed-computing.
- [kokkos](https://www.automicvault.com/pkg/brew/kokkos/) - Shares av.db curated category or tags: cli, developer-tools, hpc.
- [modules](https://www.automicvault.com/pkg/brew/modules/) - Shares av.db curated category or tags: cli, developer-tools, hpc.
- [spack](https://www.automicvault.com/pkg/brew/spack/) - Shares av.db curated category or tags: cli, developer-tools, hpc.
- [libidl](https://www.automicvault.com/pkg/brew/libidl/) - Shares av.db curated category or tags: cli, developer-tools, distributed-computing.
- [opencoarrays](https://www.automicvault.com/pkg/brew/opencoarrays/) - Shares av.db curated category or tags: cli, hpc, mpi, parallel-computing.
- [mpich](https://www.automicvault.com/pkg/brew/mpich/) - Shares av.db curated category or tags: cli, hpc, message-passing, mpi, parallel-computing.

## Combined YAML source

View the package source record on GitHub. [combined/open-mpi.yml](https://github.com/automic-vault/db/blob/main/combined/open-mpi.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
