Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
b12db5d
mpi4py CI with ASAN in separate workflow
devreal Jan 15, 2026
d4ff6ff
Reduce optimization levels and enable ASAN when building mpi4py
devreal Jan 15, 2026
6b8dfeb
Enable leak check, for sanity checking
devreal Jan 15, 2026
3fbedbf
Disable LSAN and enable stack-use-after-return checks
devreal Jan 16, 2026
e12e230
ASAN: Configure Open MPI with --enable-debug
devreal Jan 17, 2026
c3f1a51
Fix usage of PMIx_Fence_nb to conform with PMIx Standard
rhc54 Jan 17, 2026
f71172c
Have ompi_info print all variables
devreal Jan 17, 2026
09a2d30
Fix local mca variable reference leakage in ompi_mpi_register_params
devreal Jan 27, 2026
b0f20e1
Fixes suggested by copilot
devreal Jan 27, 2026
019c605
Fix local variable reference leak in coll/tuned
devreal Jan 28, 2026
97f7a93
Fix local variable reference leak in coll/ft
devreal Jan 28, 2026
4f87669
OSHMEM: squash compiler warning
hppritcha Feb 2, 2026
c3377eb
osc/sm: Add notification support for put/get operations
joe-explr Nov 4, 2025
3bbbb48
osc/sm: Nit picking edits
joe-explr Nov 4, 2025
5e895cf
Public APIs for:
Nov 19, 2025
088364c
Edits for Public APIs:
Dec 22, 2025
f0ee69f
Notified RMA counters memory allocation in the shared memory segment …
Feb 3, 2026
2432796
Merge pull request #13705 from hppritcha/squash_shmemx_alltoall_warning
hppritcha Feb 3, 2026
645739a
Editing Notified RMA implementation
Feb 4, 2026
8e48b71
ci: Remove outdated comment in community-jenkins
bwbarrett Jan 16, 2026
362dfc1
ci: Find compiler translation from AMI
bwbarrett Jan 22, 2026
4cebd30
ci: Update build config list
bwbarrett Jan 16, 2026
3b3cc5c
ci: Use virtual env for Python modules
bwbarrett Jan 16, 2026
151d1b6
ci: Add a vpath build test
bwbarrett Feb 4, 2026
ebc3e16
UCX: squash compiler warning
hppritcha Feb 5, 2026
0f78132
Merge pull request #13659 from bwbarrett/cleanup/update-ci-config
bwbarrett Feb 5, 2026
aac635c
coll/han: increase segment sizes to 512k
devreal Jan 31, 2023
4a72960
coll/adapt: Increase ireduce segment size
devreal Jan 31, 2023
13f903b
Merge pull request #11360 from devreal/han_adapt_segment_size
devreal Feb 8, 2026
583d869
Merge pull request #13719 from hppritcha/squash_compiler_warning_in_u…
bosilca Feb 9, 2026
6a7d562
Remove era_comm_free function and explain the reasoning.
abouteiller Mar 29, 2023
c882c2e
Merge pull request #11544 from abouteiller/ulfm/remove_era_free
abouteiller Feb 9, 2026
6a157fa
docs: Move xhc documentation from xhc's README to the sphinx docs
gkatev Feb 5, 2026
c1a279a
Merge pull request #13723 from gkatev/xhc_docs
gkatev Feb 10, 2026
fb4ae8c
Merge pull request #13663 from devreal/mpi4py-asan-separate
janjust Feb 10, 2026
7eecaa2
Merge pull request #13628 from rhc54/topic/fnb
janjust Feb 10, 2026
fb77662
mpif-h: fix request_get_status when MPI_STATUS_IGNORE is passed
janjust Feb 13, 2026
89c3f4d
Merge pull request #13731 from janjust/fix/mpif-h-request-get-status
hppritcha Feb 17, 2026
7441b3e
Editing Notified RMA implementation with new design
Feb 19, 2026
a792487
No need to link against common_sm.
bosilca Feb 23, 2026
ddc9609
Merge pull request #13738 from bosilca/topic/no_sm_common_in_smcuda
bosilca Feb 24, 2026
da0a4c9
Fix the _Quad discovery.
bosilca Feb 24, 2026
c5d4ef9
Merge pull request #13739 from bosilca/topic/update_for_13612_copilot
bosilca Feb 24, 2026
fb9562a
fix deprecated variable
janjust Feb 25, 2026
26d9851
Merge pull request #13743 from janjust/main-qfix
janjust Feb 25, 2026
5a15b42
coll/acoll: Fix sbuf handling in reduce_topo
amd-nithyavs Feb 26, 2026
5a92c69
pmix/prrte:advance shas
hppritcha Feb 24, 2026
e8d74ba
Merge pull request #13742 from hppritcha/advance_pmix_prrte_shas_main
hppritcha Feb 26, 2026
bf16113
Merge pull request #13747 from amd-nithyavs/26Feb2026_fix_reduce_topo
mshanthagit Feb 26, 2026
629d6ef
Comm create from group: improve debug statements
hppritcha Feb 26, 2026
032335b
OMPI/RTE: Modify job name printing to use thread local storage
shasson5 Feb 15, 2026
6ee9b49
Implementing Notify Query
Mar 4, 2026
d2d71f8
Changes to Notify Query
Mar 4, 2026
bfe1797
Implemented Set Notify Query
Mar 4, 2026
8ae3d48
Changes to Notify Query
Mar 4, 2026
b878c7d
Fix brace initialization (fixes #13757)
opoplawski Mar 5, 2026
aa024ac
Drop __opal_attribute_always_inline__ for mca_part_persist_start (fix…
opoplawski Mar 5, 2026
223351c
Add a global OMPI_HAVE_ACCELERATOR_SUPPORT variable
bosilca Aug 22, 2024
f83cc8b
Deal with PMIX optional keys
bosilca Aug 22, 2024
5376e64
Add vscode to gitignore
bosilca Feb 23, 2026
79f6a1d
Merge pull request #13753 from tvegas1/name_buffer_main
brminich Mar 9, 2026
9479fd1
Merge pull request #12775 from bosilca/topic/no_btl_smcuda_without_ac…
bosilca Mar 9, 2026
409afbf
Configuring memory barries to propagate the update
Mar 11, 2026
f81e53f
Reset notify value Implementation Signed-off-by: Joseph Antony <jajo…
Mar 11, 2026
80d8d03
Addressing review comments and bug fixes Signed-off-by: Joseph Anton…
Mar 13, 2026
93e9e82
Removing Duplicate changes Signed-off-by: Joseph Antony <jajoseph.an…
Mar 13, 2026
a1ab16b
osc/rdma: Fix handling of MPI_PROC_NULL in shared_query
devreal Feb 11, 2026
b014010
Merge pull request #13758 from opoplawski/braces
bosilca Mar 18, 2026
3e14103
Merge pull request #13756 from opoplawski/inline
bosilca Mar 18, 2026
a24d5b0
Merge pull request #13748 from hppritcha/better_debug_for_sessions
bosilca Mar 18, 2026
6dc5f72
Merge pull request #13729 from devreal/osc-rdma-shmem-query-proc-null
bosilca Mar 18, 2026
7d02698
Return MPI_ERR_PROC_FAILED on I(m)probe when appropriate
Matthew-Whitlock Mar 20, 2026
f267bef
Merge pull request #13780 from Matthew-Whitlock/iprobe_proc_failed
bosilca Mar 23, 2026
66dfeec
opal/mca: remove smcuda from dso list
edgargabriel Mar 24, 2026
56b1c4a
Merge pull request #13786 from edgargabriel/topic/no-dso-for-smcuda
edgargabriel Mar 24, 2026
478ccda
Merge branch 'devreal:main' into notified-rma-sm
joe-explr Mar 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 29 additions & 6 deletions .ci/community-jenkins/Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
//
//
// WORKSPACE Layout:
// autotools-install/ Autotools install for the builder
// ompi/ Open MPI source tree

// We if we push changes to a PR, we don't need to keep old jobs running, so
Expand Down Expand Up @@ -56,9 +55,26 @@ println('Tests Completed')
// although currently we only support the one stage of "everything", where each
// build stage is a map of different configurations to test.
def prepare_check_stages() {
def configure_options = ["--disable-dlopen", "--disable-oshmem", "--enable-builtin-atomic", "--enable-ipv6"]
def compilers = ["clang10", "gcc7", "gcc8", "gcc9", "gcc10"]
def platforms = ["amazon_linux_2", "amazon_linux_2-arm64", "rhel8"]
def configure_options = [
"--disable-dlopen",
"--disable-oshmem",
"--enable-builtin-atomic",
"--enable-ipv6"
]
def compilers = [
"gcc14",
"clang18"
]
def platforms = [
"amazon_linux_2",
"amazon_linux_2-arm64",
"rhel8",
"amazon_linux_2023-arm64",
"amazon_linux_2023-x86_64",
"ubuntu_20.04",
"ubuntu_24.04-arm64",
"ubuntu_24.04-x86_64"
]
def check_stages_list = []

// Build everything stage
Expand All @@ -79,6 +95,7 @@ def prepare_check_stages() {
}

build_parallel_map.put("distcheck", prepare_build("distcheck", "tarball_build", "--distcheck"))
build_parallel_map.put("vpath", prepare_build("vpath", "", "--build-dir ompi-build"))

check_stages_list.add(build_parallel_map)

Expand All @@ -89,14 +106,20 @@ def prepare_build(build_name, label, build_arg) {
return {
stage("${build_name}") {
node(label) {
checkout(changelog: false, poll: false, scm: scm)
// Checkout into ompi-source instead of the top of the
// workspace, so that we have room in the workspace to setup a
// vpath build.
dir ('ompi-source') {
checkout(changelog: false, poll: false, scm: scm)
}

// If pr-builder.sh fails, the sh step will throw an exception,
// which we catch so that the job doesn't abort and continues on
// to other steps - such as cleanup. Because we catch the
// exception, we need to tell Jenkins the overall job has
// failed.
try {
sh "/bin/bash -x .ci/community-jenkins/pr-builder.sh ${build_arg} ompi"
sh "/bin/bash -x ompi-source/.ci/community-jenkins/pr-builder.sh ${build_arg} --source-dir ompi-source"
} catch (Exception e) {
currentBuild.result = "FAILURE"
}
Expand Down
159 changes: 75 additions & 84 deletions .ci/community-jenkins/pr-builder.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ MAKE_ARGS=
MAKE_J="-j 8"
PREFIX="${WORKSPACE}/install"
MPIRUN_MODE=${MPIRUN_MODE:-runall}
SOURCE_DIR=
BUILD_DIR=

#
# Options Parsing
Expand Down Expand Up @@ -77,6 +79,24 @@ while (( "$#" )); do
exit 1
fi
;;
--source-dir)
if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
SOURCE_DIR=$2
shift 2
else
echo "Error: Argument for $1 is missing" >&2
exit 1
fi
;;
--build-dir)
if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
BUILD_DIR=$2
shift 2
else
echo "Error: Argument for $1 is missing" >&2
exit 1
fi
;;
-*|--*=) # Unsupported flags
echo "Error: Unsupported flag $1" >&2
exit 1
Expand Down Expand Up @@ -105,93 +125,43 @@ fi
echo "--> platform: $PLATFORM_ID"
echo "--> version: $VERSION_ID"

if test "${SOURCE_DIR}" = "" ; then
echo "SOURCED_DIR is unset. Cannot continue."
exit 1
fi

echo "--> Workspace: ${WORKSPACE}"
echo "--> Source Dir: ${SOURCE_DIR}"
echo "--> Build Dir: ${BUILD_DIR}"
echo "--> Install Dir: ${PREFIX}"

#
# See if builder provided a compiler we should use, and translate it to
# CONFIGURE_ARGS.
#
case ${PLATFORM_ID} in
rhel)
case "$COMPILER" in
gcc48|"")
echo "--> Using default compilers"
;;
*)
echo "Unsupported compiler ${COMPILER}. Aborting"
exit 1
;;
esac
;;
amzn)
case "$COMPILER" in
"")
echo "--> Using default compilers"
;;
gcc44)
CONFIGURE_ARGS="$CONFIGURE_ARGS CC=gcc44 CXX=g++44 FC=gfortran44"
;;
gcc48)
CONFIGURE_ARGS="$CONFIGURE_ARGS CC=gcc48 CXX=g++48 FC=gfortran48"
;;
clang36)
CONFIGURE_ARGS="$CONFIGURE_ARGS CC=clang CXX=clang++ --disable-mpi-fortran"
;;
*)
echo "Unsupported compiler ${COMPILER}. Aborting"
exit 1
;;
esac
;;
ubuntu)
case "$COMPILER" in
"")
echo "--> Using default compilers"
;;
gcc4*)
version=`echo "$COMPILER" | sed -e 's/gcc4\([0-9]*\)/4.\1/'`
CONFIGURE_ARGS="CC=gcc-${version} CXX=g++-${version} FC=gfortran-${version}"
;;
gcc*)
version=`echo "$COMPILER" | sed -e 's/gcc\([0-9]*\)/\1/'`
CONFIGURE_ARGS="CC=gcc-${version} CXX=g++-${version} FC=gfortran-${version}"
;;
clang3*|clang4*|clang5*|clang6*)
version=`echo "$COMPILER" | sed -e 's/clang\([0-9]\)\([0-9]*\)/\1.\2/'`
CONFIGURE_ARGS="CC=clang-${version} CXX=clang++-${version} --disable-mpi-fortran"
;;
if test "${COMPILER}" != "" ; then
if test ! -r ${HOME}/ompi-compiler-setup.sh ; then
echo "Could not find compiler setup script ompi-compiler-setup.sh. Aborting."
exit 1
fi

. ${HOME}/ompi-compiler-setup.sh
activate_compiler ${COMPILER}

CONFIGURE_ARGS="${CONFIGURE_ARGS} CC=${CC} CPP=${CPP} CXX=${CXX} FC=${FC}"
if test "$FC" = "" ; then
CONFIGURE_ARGS="${CONFIGURE_ARGS} --disable-mpi-fortran"
else
# Flang doesn't seem good enough (yet) to compile our Fortran bindings,
# so skip for now.
case "${COMPILER}" in
clang*)
version=`echo "$COMPILER" | sed -e 's/clang\([0-9]*\)/\1/'`
CONFIGURE_ARGS="CC=clang-${version} CXX=clang++-${version} --disable-mpi-fortran"
;;
*)
echo "Unsupported compiler ${COMPILER}. Aborting"
exit 1
CONFIGURE_ARGS="${CONFIGURE_ARGS} --disable-mpi-fortran"
;;
esac
;;
sles)
case "$COMPILER" in
"")
echo "--> Using default compilers"
;;
gcc48)
CONFIGURE_ARGS="$CONFIGURE_ARGS CC=gcc-48 CXX=g++-48 FC=gfortran-48"
;;
gcc5)
CONFIGURE_ARGS="$CONFIGURE_ARGS CC=gcc-5 CXX=g++-5 FC=gfortran-5"
;;
gcc6)
CONFIGURE_ARGS="$CONFIGURE_ARGS CC=gcc-6 CXX=g++-6 FC=gfortran-6"
;;
*)
echo "Unsupported compiler ${COMPILER}. Aborting"
exit 1
;;
esac
;;
FreeBSD)
CONFIGURE_ARGS="$CONFIGURE_ARGS LDFLAGS=-Wl,-rpath,/usr/local/lib/gcc5 --with-wrapper-ldflags=-Wl,-rpath,/usr/local/lib/gcc5"
;;
esac
fi
fi

CONFIGURE_ARGS="$CONFIGURE_ARGS --disable-silent-rules"

echo "--> Compiler setup: $CONFIGURE_ARGS"
Expand All @@ -210,10 +180,20 @@ fi
echo "--> Autogen arguments: $AUTOGEN_ARGS"
echo "--> Configure arguments: $CONFIGURE_ARGS"

cd "${WORKSPACE}/${SOURCE_DIR}"

# Build
sha1=`git rev-parse HEAD`
echo "--> Building commit ${sha1}"

if test "${HOME}/ompi-setup-python.sh" ; then
echo "--> Initializing Python environment"
. ${HOME}/ompi-setup-python.sh
find . -name "requirements.txt" -exec ${PIP_CMD} install -r {} \;
else
echo "--> No Python environment found, hoping for the best."
fi

if test -f autogen.pl; then
echo "--> running ./autogen.pl ${AUTOGEN_ARGS}"
./autogen.pl ${AUTOGEN_ARGS}
Expand All @@ -227,9 +207,20 @@ else
fi
fi

echo "--> running ./configure --prefix=\"${PREFIX}\" ${CONFIGURE_ARGS}"
if ! ./configure --prefix="${PREFIX}" ${CONFIGURE_ARGS}; then
echo "./configure --prefix=\"${PREFIX}\" ${CONFIGURE_ARGS} failed, ABORTING !"
if test "${BUILD_DIR}" != "" ; then
cd "${WORKSPACE}"
rm -rf "${BUILD_DIR}"
mkdir "${BUILD_DIR}"
cd "${WORKSPACE}/${BUILD_DIR}"
CONFIGURE=../${SOURCE_DIR}/configure
else
# already in ${WORKSPACE}/${SOURCE_DIR}
CONFIGURE=./configure
fi

echo "--> running ${CONFIGURE} --prefix=\"${PREFIX}\" ${CONFIGURE_ARGS}"
if ! ${CONFIGURE} --prefix="${PREFIX}" ${CONFIGURE_ARGS}; then
echo "${CONFIGURE} --prefix=\"${PREFIX}\" ${CONFIGURE_ARGS} failed, ABORTING !"
if test -f config.log; then
echo "config.log content :"
cat config.log
Expand Down Expand Up @@ -268,7 +259,7 @@ echo "--> running ompi_info"
ompi_info

echo "--> running make all in examples"
cd "examples"
cd "${WORKSPACE}/${SOURCE_DIR}/examples"
make ${MAKE_ARGS} all
cd ..

Expand Down
Loading
Loading