You are on page 1of 1

Omnivector Infrastructure Engineer Test

Build an RPM package for OpenMPI.

Estimated time: 4hrs

Requirements
● Include support for UCX and ibverbs in the Openmpi package provided by the RPM (you
will build this).
● UCX version: 1.14.0
● ibverbs version: doesn’t matter
● Openmpi version: 4.1.4
● Target operating system: Centos7.9

Producible
● A public-facing Github project configured to serve the Openmpi RPM repo.
○ Make sure to add a readme in the root of the project that explains how to add the
repository to your operating system and install the package via the yum package
manager. The readme should also provide a short description or code block that
details the steps taken to produce the build.
○ Hints
■ https://github.com/open-mpi/ompi/blob/v4.0.x/contrib/dist/linux/openmpi.s
pec#L48,L49
■ https://www.open-mpi.org/software/ompi/v4.0/srpm.php
● Bonus: Use hpccm + Docker OR LXD in deriving your solution.

Delivery: Provide a link to the Github repository.

Resources
● UCX: https://github.com/openucx/ucx/
● OpenMPI: https://www.open-mpi.org/
● Hpccm: https://github.com/NVIDIA/hpc-container-maker
● Ibverbs: https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/
○ Hint: ibverbs gets installed when you install mlnx-ofed. Install a mlnx-ofed driver
to install ibverbs.

You might also like