Compare commits
10 Commits
e167196961
...
65c51e4259
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
65c51e4259 | ||
|
|
b3db285db5 | ||
|
|
b5f66f3784 | ||
|
|
3eb32945aa | ||
|
|
5b0ef2ca48 | ||
|
|
d369933aef | ||
|
|
1532fbb917 | ||
|
|
d9131885fd | ||
|
|
80b2dfd757 | ||
|
|
c6493e82b7 |
58
0001-add-loongarch64-support-for-openmpi.patch
Normal file
58
0001-add-loongarch64-support-for-openmpi.patch
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
From 015d0246d315377d1d8aeadeff8fcbc2aef49874 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Wenlong Zhang <zhangwenlong@loongson.cn>
|
||||||
|
Date: Thu, 20 Jul 2023 03:27:39 +0000
|
||||||
|
Subject: [PATCH] add loongarch64 support for openmpi
|
||||||
|
|
||||||
|
---
|
||||||
|
config/opal_config_asm.m4 | 5 +++++
|
||||||
|
opal/include/opal/sys/architecture.h | 1 +
|
||||||
|
opal/include/opal/sys/cma.h | 5 +++++
|
||||||
|
3 files changed, 11 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/config/opal_config_asm.m4 b/config/opal_config_asm.m4
|
||||||
|
index d8640e0..586a2c8 100644
|
||||||
|
--- a/config/opal_config_asm.m4
|
||||||
|
+++ b/config/opal_config_asm.m4
|
||||||
|
@@ -1154,6 +1154,11 @@ AC_DEFUN([OPAL_CONFIG_ASM],[
|
||||||
|
OPAL_ASM_SUPPORT_64BIT=1
|
||||||
|
OPAL_GCC_INLINE_ASSIGN='"li %0, 0" : "=&r"(ret)'
|
||||||
|
;;
|
||||||
|
+ loongarch64*)
|
||||||
|
+ opal_cv_asm_arch="LOONGARCH64"
|
||||||
|
+ OPAL_ASM_SUPPORT_64BIT=1
|
||||||
|
+ OPAL_GCC_INLINE_ASSIGN='"li.d %0, 0" : "=&r"(ret)'
|
||||||
|
+ ;;
|
||||||
|
# There is no current difference between s390 and s390x
|
||||||
|
# But use two different defines in case some come later
|
||||||
|
# as s390 is 31bits while s390x is 64bits
|
||||||
|
diff --git a/opal/include/opal/sys/architecture.h b/opal/include/opal/sys/architecture.h
|
||||||
|
index 8a9fc53..ed54270 100644
|
||||||
|
--- a/opal/include/opal/sys/architecture.h
|
||||||
|
+++ b/opal/include/opal/sys/architecture.h
|
||||||
|
@@ -45,6 +45,7 @@
|
||||||
|
#define OPAL_S390 0110
|
||||||
|
#define OPAL_S390X 0111
|
||||||
|
#define OPAL_RISCV64 0120
|
||||||
|
+#define OPAL_LOONGARCH64 0130
|
||||||
|
#define OPAL_BUILTIN_SYNC 0200
|
||||||
|
#define OPAL_BUILTIN_GCC 0202
|
||||||
|
#define OPAL_BUILTIN_NO 0203
|
||||||
|
diff --git a/opal/include/opal/sys/cma.h b/opal/include/opal/sys/cma.h
|
||||||
|
index 8040ccb..11417b5 100644
|
||||||
|
--- a/opal/include/opal/sys/cma.h
|
||||||
|
+++ b/opal/include/opal/sys/cma.h
|
||||||
|
@@ -97,6 +97,11 @@
|
||||||
|
#define __NR_process_vm_readv 270
|
||||||
|
#define __NR_process_vm_writev 271
|
||||||
|
|
||||||
|
+#elif OPAL_ASSEMBLY_ARCH == OPAL_LOONGARCH64
|
||||||
|
+/* LOONGARCH64 uses the asm-generic syscall numbers */
|
||||||
|
+#define __NR_process_vm_readv 270
|
||||||
|
+#define __NR_process_vm_writev 271
|
||||||
|
+
|
||||||
|
#else
|
||||||
|
#error "Unsupported architecture for process_vm_readv and process_vm_writev syscalls"
|
||||||
|
#endif
|
||||||
|
--
|
||||||
|
2.33.0
|
||||||
|
|
||||||
42
openmpi.spec
42
openmpi.spec
@ -1,6 +1,6 @@
|
|||||||
Name: openmpi
|
Name: openmpi
|
||||||
Version: 4.1.5
|
Version: 4.1.5
|
||||||
Release: 1
|
Release: 6
|
||||||
Summary: Open Source High Performance Computing
|
Summary: Open Source High Performance Computing
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
URL: http://www.open-mpi.org/
|
URL: http://www.open-mpi.org/
|
||||||
@ -9,11 +9,17 @@ Source1: openmpi.module.in
|
|||||||
Source2: openmpi.pth.py3
|
Source2: openmpi.pth.py3
|
||||||
Source3: macros.openmpi
|
Source3: macros.openmpi
|
||||||
Patch1000: add-riscv64-support.patch
|
Patch1000: add-riscv64-support.patch
|
||||||
|
%ifarch loongarch64
|
||||||
|
Patch1001: 0001-add-loongarch64-support-for-openmpi.patch
|
||||||
|
%endif
|
||||||
|
|
||||||
BuildRequires: gcc-c++, gcc-gfortran
|
BuildRequires: gcc-c++, gcc-gfortran
|
||||||
BuildRequires: valgrind-devel, hwloc-devel, java-devel, libfabric-devel, papi-devel
|
%ifarch %{valgrind_arches}
|
||||||
|
BuildRequires: valgrind-devel
|
||||||
|
%endif
|
||||||
|
BuildRequires: hwloc-devel, java-devel, libfabric-devel, papi-devel
|
||||||
BuildRequires: libibverbs-devel >= 1.1.3, opensm-devel > 3.3.0
|
BuildRequires: libibverbs-devel >= 1.1.3, opensm-devel > 3.3.0
|
||||||
BuildRequires: librdmacm-devel, rdma-core-devel, pmix-devel
|
BuildRequires: librdmacm librdmacm-devel, rdma-core-devel, pmix-devel
|
||||||
BuildRequires: hwloc-gui chrpath
|
BuildRequires: hwloc-gui chrpath
|
||||||
BuildRequires: perl-generators, perl(Getopt::Long)
|
BuildRequires: perl-generators, perl(Getopt::Long)
|
||||||
BuildRequires: python3-devel libevent-devel
|
BuildRequires: python3-devel libevent-devel
|
||||||
@ -21,6 +27,9 @@ BuildRequires: automake libtool
|
|||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
BuildRequires: infinipath-psm-devel, libpsm2-devel zlib-devel
|
BuildRequires: infinipath-psm-devel, libpsm2-devel zlib-devel
|
||||||
%endif
|
%endif
|
||||||
|
%ifarch loongarch64
|
||||||
|
BuildRequires: automake
|
||||||
|
%endif
|
||||||
|
|
||||||
Provides: mpi, %{name}-java
|
Provides: mpi, %{name}-java
|
||||||
Requires: environment(modules), openssh-clients
|
Requires: environment(modules), openssh-clients
|
||||||
@ -40,10 +49,15 @@ community in order to build the best MPI library available.
|
|||||||
%global name_all openmpi-aarch64
|
%global name_all openmpi-aarch64
|
||||||
%elifarch riscv64
|
%elifarch riscv64
|
||||||
%global name_all openmpi-riscv64
|
%global name_all openmpi-riscv64
|
||||||
%else
|
%elifarch ppc64le
|
||||||
|
%global name_all openmpi-ppc64le
|
||||||
|
%elifarch x86_64
|
||||||
%global name_all openmpi-x86_64
|
%global name_all openmpi-x86_64
|
||||||
|
%elifarch loongarch64
|
||||||
|
%global name_all openmpi-loongarch64
|
||||||
|
%else
|
||||||
|
%global namearch openmpi-%{_arch}
|
||||||
%endif
|
%endif
|
||||||
#%global namearch openmpi-%{_arch}
|
|
||||||
|
|
||||||
%package devel
|
%package devel
|
||||||
Summary: Development files for openmpi
|
Summary: Development files for openmpi
|
||||||
@ -84,14 +98,15 @@ This contains man files for the using of openmpi.
|
|||||||
--sysconfdir=%{_sysconfdir}/%{name_all} \
|
--sysconfdir=%{_sysconfdir}/%{name_all} \
|
||||||
--disable-silent-rules \
|
--disable-silent-rules \
|
||||||
--enable-builtin-atomics \
|
--enable-builtin-atomics \
|
||||||
--enable-memchecker \
|
|
||||||
--enable-mpi-thread-multiple \
|
--enable-mpi-thread-multiple \
|
||||||
--enable-mpi-cxx \
|
--enable-mpi-cxx \
|
||||||
--enable-mpi-java \
|
--enable-mpi-java \
|
||||||
--enable-mpi1-compatibility \
|
--enable-mpi1-compatibility \
|
||||||
--with-sge \
|
--with-sge \
|
||||||
|
%ifarch %{valgrind_arches}
|
||||||
--with-valgrind \
|
--with-valgrind \
|
||||||
--enable-memchecker \
|
--enable-memchecker \
|
||||||
|
%endif
|
||||||
--with-hwloc=/usr \
|
--with-hwloc=/usr \
|
||||||
--with-pmix=external \
|
--with-pmix=external \
|
||||||
--with-libevent=external \
|
--with-libevent=external \
|
||||||
@ -218,6 +233,21 @@ make check
|
|||||||
%{_mandir}/%{name_all}/man*/*
|
%{_mandir}/%{name_all}/man*/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Jun 07 2024 wangqiang <wangqiang1@kylinos.cn> - 4.1.5-6
|
||||||
|
- Fix name_all
|
||||||
|
|
||||||
|
* Tue Mar 05 2024 laokz <zhangkai@iscas.ac.cn> - 4.1.5-5
|
||||||
|
- let BuildRequire valgrind depend on system %{valgrind_arches}
|
||||||
|
|
||||||
|
* Tue Jan 16 2024 peng.zou <peng.zou@shingroup.cn> - 4.1.5-4
|
||||||
|
- Add ppc64le support
|
||||||
|
|
||||||
|
* Wed Jan 10 2024 xu_ping<707078654@qq.com> - 4.1.5-3
|
||||||
|
- fix build error due to rdma-core separate some packages.
|
||||||
|
|
||||||
|
* Thu Jul 20 2023 Wenlong Zhang<zhangwenlong@loongson.cn> - 4.1.5-2
|
||||||
|
- fix build error that automake can not be found
|
||||||
|
|
||||||
* Fri Apr 21 2023 wulei <wu_lei@hoperun.com> - 4.1.5-1
|
* Fri Apr 21 2023 wulei <wu_lei@hoperun.com> - 4.1.5-1
|
||||||
- Upgrade package to version 4.1.5
|
- Upgrade package to version 4.1.5
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user