Skip to content

Commit 93fdf1d

Browse files
committed
Add libhwloc support for memkind example
1 parent 1065944 commit 93fdf1d

File tree

2 files changed

+34
-1
lines changed

2 files changed

+34
-1
lines changed

docker/Dockerfile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ RUN dnf update -y && dnf install -y\
5353
nano\
5454
ncurses-devel\
5555
ndctl-devel\
56+
numactl\
5657
numactl-devel\
5758
java-1.8.0-openjdk\
5859
openssh-server\
@@ -108,6 +109,9 @@ RUN /pmemkv-nodejs.sh
108109
COPY pmemkv-ruby.sh /
109110
RUN /pmemkv-ruby.sh
110111

112+
COPY docker_install_hwloc.sh /
113+
RUN /docker_install_hwloc.sh
114+
111115
COPY memkind.sh /
112116
RUN /memkind.sh
113117

@@ -117,4 +121,4 @@ RUN /librpma.sh
117121
COPY tz.sh /
118122
RUN /tz.sh
119123

120-
RUN rm /pmdk.sh /valgrind.sh /pmemobj-cpp.sh /pmemkv.sh /setup-maven-settings.sh /pmemkv-java.sh /pmemkv-python.sh /pmemkv-nodejs.sh /pmemkv-ruby.sh /memkind.sh /librpma.sh /tz.sh
124+
RUN rm /pmdk.sh /valgrind.sh /pmemobj-cpp.sh /pmemkv.sh /setup-maven-settings.sh /pmemkv-java.sh /pmemkv-python.sh /pmemkv-nodejs.sh /pmemkv-ruby.sh /memkind.sh /librpma.sh /tz.sh /docker_install_hwloc.sh

docker/docker_install_hwloc.sh

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#!/bin/bash
2+
# SPDX-License-Identifier: BSD-2-Clause
3+
# Copyright (C) 2020 - 2021 Intel Corporation.
4+
5+
# installs hwloc library
6+
7+
set -e
8+
9+
HWLOC_LIBRARY_VERSION=v2.3
10+
HWLOC_VERSION="${HWLOC_LIBRARY_VERSION:1}".0
11+
HWLOC_TAR_GZ=hwloc-"${HWLOC_VERSION}".tar.gz
12+
13+
HWLOC_TARBALL_URL=https://download.open-mpi.org/release/hwloc/"$HWLOC_LIBRARY_VERSION"/"$HWLOC_TAR_GZ"
14+
15+
HWLOC_LOCAL_DIR="$HOME"/hwloc/"$HWLOC_LIBRARY_VERSION"
16+
HWLOC_LOCAL_TAR_GZ="$HWLOC_LOCAL_DIR"/"$HWLOC_TAR_GZ"
17+
18+
# create hwloc directory in home directory
19+
mkdir -p "$HWLOC_LOCAL_DIR"
20+
21+
# download and untar hwloc library to hwloc directory
22+
curl -L "$HWLOC_TARBALL_URL" -o "$HWLOC_LOCAL_TAR_GZ"
23+
tar -xzf "$HWLOC_LOCAL_TAR_GZ" -C "$HWLOC_LOCAL_DIR" --strip-components=1
24+
25+
# go to hwloc directory, build and install library
26+
cd "$HWLOC_LOCAL_DIR"
27+
./configure --prefix=/usr
28+
make -j "$(nproc)"
29+
sudo make -j "$(nproc)" install

0 commit comments

Comments
 (0)