Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
18 changes: 10 additions & 8 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.0-GCC-10.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,18 @@ patches = [
'OpenMPI-4.0.1_remove-pmix-check-in-pmi-switch.patch',
'OpenMPI-4.x_fix_pmix_discovery.patch',
'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'228467c3dd15339d9b26cf26a291af3ee7c770699c5e8a1b3ad786f9ae78140a', # openmpi-4.1.0.tar.gz
# OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
# OpenMPI-4.0.1_remove-pmix-check-in-pmi-switch.patch
'a5737061eb9006e862f30019776adf092d800f681272be7f1575e74b4bfa20fb',
'547641fff884c917237d158b0b13bdf387977cf0dddfd7e49e78d5f759a6a31b', # OpenMPI-4.x_fix_pmix_discovery.patch
# OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea',
{'openmpi-4.1.0.tar.gz': '228467c3dd15339d9b26cf26a291af3ee7c770699c5e8a1b3ad786f9ae78140a'},
{'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch':
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e'},
{'OpenMPI-4.0.1_remove-pmix-check-in-pmi-switch.patch':
'a5737061eb9006e862f30019776adf092d800f681272be7f1575e74b4bfa20fb'},
{'OpenMPI-4.x_fix_pmix_discovery.patch': '547641fff884c917237d158b0b13bdf387977cf0dddfd7e49e78d5f759a6a31b'},
{'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch':
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
24 changes: 13 additions & 11 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,21 @@ patches = [
'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch',
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda', # openmpi-4.1.1.tar.bz2
# OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
# OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d',
# OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea',
# OpenMPI-4.1.1_build-with-internal-cuda-header.patch
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
# OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
{'openmpi-4.1.1.tar.bz2': 'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda'},
{'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch':
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e'},
{'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch':
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d'},
{'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch':
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
28 changes: 15 additions & 13 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.1-GCC-11.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,23 @@ patches = [
'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch',
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda', # openmpi-4.1.1.tar.bz2
# OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
# OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d',
'04353672cf7be031e5306c94068d7012d99e6cd94b69d93230797ffcd7f31903', # OpenMPI-4.1.1_opal-pmix-package-rank.patch
'384ef9f1fa803b0d71dae2ec0748d0f20295992437532afedf21478bda164ff8', # OpenMPI-4.1.1_pmix3x-protection.patch
# OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea',
# OpenMPI-4.1.1_build-with-internal-cuda-header.patch
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
# OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
{'openmpi-4.1.1.tar.bz2': 'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda'},
{'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch':
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e'},
{'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch':
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d'},
{'OpenMPI-4.1.1_opal-pmix-package-rank.patch': '04353672cf7be031e5306c94068d7012d99e6cd94b69d93230797ffcd7f31903'},
{'OpenMPI-4.1.1_pmix3x-protection.patch': '384ef9f1fa803b0d71dae2ec0748d0f20295992437532afedf21478bda164ff8'},
{'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch':
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,17 @@ patches = [
'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch',
'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch',
'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda', # openmpi-4.1.1.tar.bz2
# OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
# OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d',
# OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea',
{'openmpi-4.1.1.tar.bz2': 'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda'},
{'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch':
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e'},
{'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch':
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d'},
{'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch':
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
21 changes: 11 additions & 10 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.1-intel-compilers-2021.4.0.eb
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,21 @@ patches = [
'OpenMPI-4.1.1_opal-pmix-package-rank.patch',
'OpenMPI-4.1.1_pmix3x-protection.patch',
'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda', # openmpi-4.1.1.tar.bz2
# OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
# OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d',
'04353672cf7be031e5306c94068d7012d99e6cd94b69d93230797ffcd7f31903', # OpenMPI-4.1.1_opal-pmix-package-rank.patch
'384ef9f1fa803b0d71dae2ec0748d0f20295992437532afedf21478bda164ff8', # OpenMPI-4.1.1_pmix3x-protection.patch
# OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea',
{'openmpi-4.1.1.tar.bz2': 'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda'},
{'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch':
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e'},
{'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch':
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d'},
{'OpenMPI-4.1.1_opal-pmix-package-rank.patch': '04353672cf7be031e5306c94068d7012d99e6cd94b69d93230797ffcd7f31903'},
{'OpenMPI-4.1.1_pmix3x-protection.patch': '384ef9f1fa803b0d71dae2ec0748d0f20295992437532afedf21478bda164ff8'},
{'OpenMPI-4.1.0-1-pml-ucx-datatype-memleak.patch':
'a94a74b174ce783328abfd3656ff5196b89ef4c819fe4c8b8a0f1277123e76ea'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]


builddependencies = [
('pkg-config', '0.29.2'),
]
Expand Down
6 changes: 5 additions & 1 deletion easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.2-GCC-10.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,11 @@ toolchain = {'name': 'GCC', 'version': '10.2.0'}

source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['9b78c7cf7fc32131c5cf43dd2ab9740149d9d87cadb2e2189f02685749a6b527']
patches = ['OpenMPI-4.1.x_add_atomic_wmb.patch']
checksums = [
{'openmpi-4.1.2.tar.bz2': '9b78c7cf7fc32131c5cf43dd2ab9740149d9d87cadb2e2189f02685749a6b527'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
('pkg-config', '0.29.2'),
Expand Down
6 changes: 5 additions & 1 deletion easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.2-GCC-11.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,11 @@ toolchain = {'name': 'GCC', 'version': '11.2.0'}

source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['9b78c7cf7fc32131c5cf43dd2ab9740149d9d87cadb2e2189f02685749a6b527']
patches = ['OpenMPI-4.1.x_add_atomic_wmb.patch']
checksums = [
{'openmpi-4.1.2.tar.bz2': '9b78c7cf7fc32131c5cf43dd2ab9740149d9d87cadb2e2189f02685749a6b527'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
('pkgconf', '1.8.0'),
Expand Down
12 changes: 7 additions & 5 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,15 @@ sources = [SOURCELOWER_TAR_BZ2]
patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d', # openmpi-4.1.4.tar.bz2
# OpenMPI-4.1.1_build-with-internal-cuda-header.patch
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
# OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
{'openmpi-4.1.4.tar.bz2': '92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
12 changes: 7 additions & 5 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-12.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,15 @@ sources = [SOURCELOWER_TAR_BZ2]
patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d', # openmpi-4.1.4.tar.bz2
# OpenMPI-4.1.1_build-with-internal-cuda-header.patch
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
# OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
{'openmpi-4.1.4.tar.bz2': '92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,15 @@ sources = [SOURCELOWER_TAR_BZ2]
patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
'92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d', # openmpi-4.1.4.tar.bz2
# OpenMPI-4.1.1_build-with-internal-cuda-header.patch
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
# OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
{'openmpi-4.1.4.tar.bz2': '92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
2 changes: 2 additions & 0 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.5-GCC-12.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,15 @@ sources = [SOURCELOWER_TAR_BZ2]
patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
{'openmpi-4.1.5.tar.bz2': 'a640986bc257389dd379886fdae6264c8cfa56bc98b71ce3ae3dfbd8ce61dbe3'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
5 changes: 3 additions & 2 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.5-GCC-12.3.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,16 @@ patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.5_fix-pmix3x.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
{'openmpi-4.1.5.tar.bz2': 'a640986bc257389dd379886fdae6264c8cfa56bc98b71ce3ae3dfbd8ce61dbe3'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.5_fix-pmix3x.patch':
'46edac3dbf32f2a611d45e8a3c8edd3ae2f430eec16a1373b510315272115c40'},
{'OpenMPI-4.1.5_fix-pmix3x.patch': '46edac3dbf32f2a611d45e8a3c8edd3ae2f430eec16a1373b510315272115c40'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,16 @@ patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.5_fix-pmix3x.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
{'openmpi-4.1.5.tar.bz2': 'a640986bc257389dd379886fdae6264c8cfa56bc98b71ce3ae3dfbd8ce61dbe3'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.5_fix-pmix3x.patch':
'46edac3dbf32f2a611d45e8a3c8edd3ae2f430eec16a1373b510315272115c40'},
{'OpenMPI-4.1.5_fix-pmix3x.patch': '46edac3dbf32f2a611d45e8a3c8edd3ae2f430eec16a1373b510315272115c40'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
2 changes: 2 additions & 0 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.6-GCC-13.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,15 @@ sources = [SOURCELOWER_TAR_BZ2]
patches = [
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
'OpenMPI-4.1.x_add_atomic_wmb.patch',
]
checksums = [
{'openmpi-4.1.6.tar.bz2': 'f740994485516deb63b5311af122c265179f5328a0d857a567b85db00b11e415'},
{'OpenMPI-4.1.1_build-with-internal-cuda-header.patch':
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83'},
{'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch':
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e'},
{'OpenMPI-4.1.x_add_atomic_wmb.patch': '9494bbc546d661ba5189e44b4c84a7f8df30a87cdb9d96ce2e73a7c8fecba172'},
]

builddependencies = [
Expand Down
35 changes: 35 additions & 0 deletions easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.x_add_atomic_wmb.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
From b6bfd8ef4ea52fb0257af8013b953f7942d06bae Mon Sep 17 00:00:00 2001
From: Luke Robison <lrbison@amazon.com>
Date: Wed, 14 Feb 2024 21:14:29 +0000
Subject: [PATCH] btl/smcuda: Add atomic_wmb() before sm_fifo_write

This change fixes https://github.com/open-mpi/ompi/issues/12270

Testing on c7g instance type (arm64) confirms this change elminates
hangs and crashes that were previously observed in 1 in 30 runs of
IMB alltoall benchmark. Tested with over 300 runs and no failures.

The write memory barrier prevents other CPUs from observing the fifo
get updated before they observe the updated contents of the header
itself. Without the barrier, uninitialized header contents caused
the crashes and invalid data.

Signed-off-by: Luke Robison <lrbison@amazon.com>
(cherry picked from commit 71f378d28cb89dd80379dbad570849b297594cde)
---
opal/mca/btl/smcuda/btl_smcuda_fifo.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/opal/mca/btl/smcuda/btl_smcuda_fifo.h b/opal/mca/btl/smcuda/btl_smcuda_fifo.h
index c4db00d10a8..f1c222d7ae0 100644
--- a/opal/mca/btl/smcuda/btl_smcuda_fifo.h
+++ b/opal/mca/btl/smcuda/btl_smcuda_fifo.h
@@ -86,6 +86,8 @@ add_pending(struct mca_btl_base_endpoint_t *ep, void *data, bool resend)
#define MCA_BTL_SMCUDA_FIFO_WRITE(endpoint_peer, my_smp_rank, \
peer_smp_rank, hdr, resend, retry_pending_sends, rc) \
do { \
+ /* memory barrier: ensure writes to the hdr have completed */ \
+ opal_atomic_wmb(); \
sm_fifo_t* fifo = &(mca_btl_smcuda_component.fifo[peer_smp_rank][FIFO_MAP(my_smp_rank)]); \
\
if ( retry_pending_sends ) { \