Accepting request 587092 from home:eeich:branches:network:cluster
- Update slurm to v17.11.4 (FATE#325451) * Link dynamically to libslurm.so to reduce footprint of all binaries. * Remove plugins for obsolete MPI stacks: - lam - mpich1_p4 - mpich1_shmem - mvapich * Numerous fixes - check 'NEWS' file. - slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch: Removed. Code upstream. - slurmctld-service-var-run-path.patch: Replaced by sed script. OBS-URL: https://build.opensuse.org/request/show/587092 OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=44
This commit is contained in:
parent
d6c16c524d
commit
23b2a195ba
@ -1,45 +0,0 @@
|
||||
From: Egbert Eich <eich@freedesktop.org>
|
||||
Date: Sun Oct 16 13:10:39 2016 +0200
|
||||
Subject: plugins/cgroup: Fix slurmd for new API in hwloc-2.0
|
||||
Git-repo: https://github.com/SchedMD/slurm
|
||||
Git-commit: 018eee7d8dee1f769477263a891948e5bca8f738
|
||||
References:
|
||||
|
||||
The API of hwloc has changed considerably for version 2.0.
|
||||
For a summary check:
|
||||
https://github.com/open-mpi/hwloc/wiki/Upgrading-to-v2.0-API
|
||||
Test for the API version to support both the old and new API.
|
||||
|
||||
Signed-off-by: Egbert Eich <eich@freedesktop.org>
|
||||
Signed-off-by: Egbert Eich <eich@suse.de>
|
||||
---
|
||||
src/plugins/task/cgroup/task_cgroup_cpuset.c | 15 +++++++++++++++
|
||||
1 file changed, 15 insertions(+)
|
||||
diff --git a/src/plugins/task/cgroup/task_cgroup_cpuset.c b/src/plugins/task/cgroup/task_cgroup_cpuset.c
|
||||
index 9c41ea4..94a4b09 100644
|
||||
--- a/src/plugins/task/cgroup/task_cgroup_cpuset.c
|
||||
+++ b/src/plugins/task/cgroup/task_cgroup_cpuset.c
|
||||
@@ -641,8 +641,23 @@ static int _get_cpuinfo(uint32_t *nsockets, uint32_t *ncores,
|
||||
/* parse full system info */
|
||||
hwloc_topology_set_flags(topology, HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM);
|
||||
/* ignores cache, misc */
|
||||
+#if HWLOC_API_VERSION < 0x00020000
|
||||
hwloc_topology_ignore_type (topology, HWLOC_OBJ_CACHE);
|
||||
hwloc_topology_ignore_type (topology, HWLOC_OBJ_MISC);
|
||||
+#else
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L1CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L2CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L3CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L4CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L5CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_MISC,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+#endif
|
||||
/* load topology */
|
||||
if (hwloc_topology_load(topology)) {
|
||||
error("%s: hwloc_topology_load() failed", __func__);
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:faf4704505dfc5b6fa199f099d36dbc3d23faf149251f36672631dbbbe3b1b71
|
||||
size 6053443
|
3
slurm-17.11.4.tar.bz2
Normal file
3
slurm-17.11.4.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:18216a38e5660bbb340d906480b4f663192e158e9a9eaa8e713415c9e4766df2
|
||||
size 6203468
|
@ -1,3 +1,21 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 14 19:34:58 UTC 2018 - eich@suse.com
|
||||
|
||||
- Update slurm to v17.11.4 (FATE#325451)
|
||||
* Link dynamically to libslurm.so to reduce footprint
|
||||
of all binaries.
|
||||
* Remove plugins for obsolete MPI stacks:
|
||||
- lam
|
||||
- mpich1_p4
|
||||
- mpich1_shmem
|
||||
- mvapich
|
||||
* Numerous fixes - check 'NEWS' file.
|
||||
- slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch
|
||||
plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch:
|
||||
Removed. Code upstream.
|
||||
- slurmctld-service-var-run-path.patch:
|
||||
Replaced by sed script.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com
|
||||
|
||||
|
26
slurm.spec
26
slurm.spec
@ -17,8 +17,8 @@
|
||||
|
||||
|
||||
# Check file META in sources: update so_version to (API_CURRENT - API_AGE)
|
||||
%define so_version 31
|
||||
%define ver 17.02.9
|
||||
%define so_version 32
|
||||
%define ver 17.11.4
|
||||
# so-version is 0 and seems to be stable
|
||||
%define pmi_so 0
|
||||
|
||||
@ -65,10 +65,7 @@ Url: https://computing.llnl.gov/linux/slurm/
|
||||
Source: https://download.schedmd.com/slurm/%{name}-%{ver}.tar.bz2
|
||||
Patch0: slurm-2.4.4-rpath.patch
|
||||
Patch1: slurm-2.4.4-init.patch
|
||||
Patch2: slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch
|
||||
Patch3: plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch
|
||||
Patch4: pam_slurm-Initialize-arrays-and-pass-sizes.patch
|
||||
Patch5: slurmctld-service-var-run-path.patch
|
||||
Patch2: pam_slurm-Initialize-arrays-and-pass-sizes.patch
|
||||
Requires: slurm-config = %{version}
|
||||
Requires: slurm-node = %{version}
|
||||
%if 0%{?suse_version} <= 1140
|
||||
@ -150,7 +147,6 @@ with SLURM.
|
||||
%package -n libpmi%{pmi_so}
|
||||
Summary: Libraries for SLURM
|
||||
Group: System/Libraries
|
||||
Requires: %{libslurm} = %version
|
||||
|
||||
%description -n libpmi%{pmi_so}
|
||||
This package contains the library needed to run programs dynamically linked
|
||||
@ -316,9 +312,6 @@ for the slurm daemons.
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
|
||||
%build
|
||||
%configure --enable-shared \
|
||||
@ -391,6 +384,8 @@ EOF
|
||||
# 9/17/14 karl.w.schulz@intel.com - Add option to drop VM cache during epilog
|
||||
sed -i '/^# No other SLURM jobs,/i \\n# Drop clean caches (OpenHPC)\necho 3 > /proc/sys/vm/drop_caches\n\n#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.epilog.clean
|
||||
mkdir -p %{buildroot}/%_localstatedir/lib/slurm
|
||||
sed -i -e "s@PIDFile=.*@PIDFile=%{_localstatedir}/run/slurm/slurmctld.pid@" %{buildroot}/%{_unitdir}/slurmctld.service
|
||||
sed -i -e "s@PIDFile=.*@PIDFile=%{_localstatedir}/run/slurm/slurmd.pid@" %{buildroot}/%{_unitdir}/slurmd.service
|
||||
%endif
|
||||
|
||||
# Delete unpackaged files:
|
||||
@ -695,6 +690,7 @@ exit 0
|
||||
%defattr(-,root,root)
|
||||
%{_sysconfdir}/ld.so.conf.d/slurm.conf
|
||||
%dir %{_libdir}/slurm
|
||||
%{_libdir}/slurm/libslurmfull.so
|
||||
%{_libdir}/slurm/accounting_storage_filetxt.so
|
||||
%{_libdir}/slurm/accounting_storage_none.so
|
||||
%{_libdir}/slurm/accounting_storage_slurmdbd.so
|
||||
@ -704,7 +700,7 @@ exit 0
|
||||
%{_libdir}/slurm/acct_gather_energy_rapl.so
|
||||
%{_libdir}/slurm/acct_gather_filesystem_lustre.so
|
||||
%{_libdir}/slurm/acct_gather_filesystem_none.so
|
||||
%{_libdir}/slurm/acct_gather_infiniband_none.so
|
||||
%{_libdir}/slurm/acct_gather_interconnect_none.so
|
||||
%{_libdir}/slurm/acct_gather_profile_none.so
|
||||
%{_libdir}/slurm/burst_buffer_generic.so
|
||||
%{_libdir}/slurm/checkpoint_none.so
|
||||
@ -739,12 +735,6 @@ exit 0
|
||||
%{_libdir}/slurm/mcs_group.so
|
||||
%{_libdir}/slurm/mcs_none.so
|
||||
%{_libdir}/slurm/mcs_user.so
|
||||
%{_libdir}/slurm/mpi_lam.so
|
||||
%{_libdir}/slurm/mpi_mpich1_p4.so
|
||||
%{_libdir}/slurm/mpi_mpich1_shmem.so
|
||||
%{_libdir}/slurm/mpi_mpichgm.so
|
||||
%{_libdir}/slurm/mpi_mpichmx.so
|
||||
%{_libdir}/slurm/mpi_mvapich.so
|
||||
%{_libdir}/slurm/mpi_none.so
|
||||
%{_libdir}/slurm/mpi_openmpi.so
|
||||
%{_libdir}/slurm/mpi_pmi2.so
|
||||
@ -783,7 +773,7 @@ exit 0
|
||||
%{_libdir}/slurm/topology_none.so
|
||||
%{_libdir}/slurm/topology_tree.so
|
||||
%if 0%{?suse_version} > 1310
|
||||
%{_libdir}/slurm/acct_gather_infiniband_ofed.so
|
||||
%{_libdir}/slurm/acct_gather_interconnect_ofed.so
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
%ifarch %{ix86} x86_64
|
||||
|
@ -1,39 +0,0 @@
|
||||
Index: slurm-slurm-16-05-8-1/etc/slurmctld.service.in
|
||||
===================================================================
|
||||
--- slurm-slurm-16-05-8-1.orig/etc/slurmctld.service.in
|
||||
+++ slurm-slurm-16-05-8-1/etc/slurmctld.service.in
|
||||
@@ -8,7 +8,7 @@ Type=forking
|
||||
EnvironmentFile=-/etc/sysconfig/slurmctld
|
||||
ExecStart=@sbindir@/slurmctld $SLURMCTLD_OPTIONS
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
-PIDFile=/var/run/slurmctld.pid
|
||||
+PIDFile=/var/run/slurm/slurmctld.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Index: slurm-slurm-16-05-8-1/etc/slurmd.service.in
|
||||
===================================================================
|
||||
--- slurm-slurm-16-05-8-1.orig/etc/slurmd.service.in
|
||||
+++ slurm-slurm-16-05-8-1/etc/slurmd.service.in
|
||||
@@ -8,7 +8,7 @@ Type=forking
|
||||
EnvironmentFile=-/etc/sysconfig/slurmd
|
||||
ExecStart=@sbindir@/slurmd $SLURMD_OPTIONS
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
-PIDFile=/var/run/slurmd.pid
|
||||
+PIDFile=/var/run/slurm/slurmd.pid
|
||||
KillMode=process
|
||||
LimitNOFILE=51200
|
||||
LimitMEMLOCK=infinity
|
||||
Index: slurm-slurm-16-05-8-1/etc/slurmdbd.service.in
|
||||
===================================================================
|
||||
--- slurm-slurm-16-05-8-1.orig/etc/slurmdbd.service.in
|
||||
+++ slurm-slurm-16-05-8-1/etc/slurmdbd.service.in
|
||||
@@ -8,7 +8,7 @@ Type=forking
|
||||
EnvironmentFile=-/etc/sysconfig/slurmdbd
|
||||
ExecStart=@sbindir@/slurmdbd $SLURMDBD_OPTIONS
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
-PIDFile=/var/run/slurmdbd.pid
|
||||
+PIDFile=/var/run/slurm/slurmdbd.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
@ -1,45 +0,0 @@
|
||||
From: Egbert Eich <eich@suse.com>
|
||||
Date: Sun Oct 16 09:07:46 2016 +0200
|
||||
Subject: slurmd: Fix slurmd for new API in hwloc-2.0
|
||||
Git-repo: https://github.com/SchedMD/slurm
|
||||
Git-commit: 2e431ed7fdf7a57c7ce1b5f3d3a8bbedaf94a51d
|
||||
References:
|
||||
|
||||
The API of hwloc has changed considerably for version 2.0.
|
||||
For a summary check:
|
||||
https://github.com/open-mpi/hwloc/wiki/Upgrading-to-v2.0-API
|
||||
Test for the API version to support both the old and new API.
|
||||
|
||||
Signed-off-by: Egbert Eich <eich@suse.com>
|
||||
Signed-off-by: Egbert Eich <eich@suse.de>
|
||||
---
|
||||
src/slurmd/common/xcpuinfo.c | 15 +++++++++++++++
|
||||
1 file changed, 15 insertions(+)
|
||||
diff --git a/src/slurmd/common/xcpuinfo.c b/src/slurmd/common/xcpuinfo.c
|
||||
index 4eec6cb..22a47d5 100644
|
||||
--- a/src/slurmd/common/xcpuinfo.c
|
||||
+++ b/src/slurmd/common/xcpuinfo.c
|
||||
@@ -212,8 +212,23 @@ get_cpuinfo(uint16_t *p_cpus, uint16_t *p_boards,
|
||||
hwloc_topology_set_flags(topology, HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM);
|
||||
|
||||
/* ignores cache, misc */
|
||||
+#if HWLOC_API_VERSION < 0x00020000
|
||||
hwloc_topology_ignore_type (topology, HWLOC_OBJ_CACHE);
|
||||
hwloc_topology_ignore_type (topology, HWLOC_OBJ_MISC);
|
||||
+#else
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L1CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L2CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L3CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L4CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L5CACHE,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_MISC,
|
||||
+ HWLOC_TYPE_FILTER_KEEP_NONE);
|
||||
+#endif
|
||||
|
||||
/* load topology */
|
||||
debug2("hwloc_topology_load");
|
Loading…
Reference in New Issue
Block a user