Skip to content

Commit baf70dc

Browse files
committed
Fix nccl version in manylinux
1 parent 4a5dd62 commit baf70dc

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

tools/manylinux1/Dockerfile.x64

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ ENV PATH /opt/rh/devtoolset-2/root/usr/bin:$PATH
1313
ENV LD_LIBRARY_PATH /opt/rh/devtoolset-2/root/usr/lib64:/opt/rh/devtoolset-2/root/usr/lib:/usr/local/lib64:/usr/local/lib:${LD_LIBRARY_PATH}
1414
ENV PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
1515

16+
RUN yum install -y sqlite-devel zlib-devel openssl-devel pcre-devel vim tk-devel tkinter libtool xz
1617
COPY build_scripts /build_scripts
17-
RUN bash build_scripts/build.sh && rm -r build_scripts
18+
RUN bash build_scripts/build.sh && \
19+
bash build_scripts/install_nccl2.sh && rm -r build_scripts
1820

1921
ENV SSL_CERT_FILE=/opt/_internal/certs.pem
2022

@@ -34,9 +36,6 @@ RUN cd /opt && wget -q --no-check-certificate https://github.com/google/protobuf
3436
tar xzf protobuf-cpp-3.1.0.tar.gz && \
3537
cd protobuf-3.1.0 && ./configure && make -j4 && make install && cd .. && rm -f protobuf-cpp-3.1.0.tar.gz
3638

37-
38-
RUN yum install -y sqlite-devel zlib-devel openssl-devel pcre-devel vim tk-devel tkinter libtool
39-
4039
RUN wget -O /root/requirements.txt https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/python/requirements.txt
4140

4241
RUN LD_LIBRARY_PATH=/opt/_internal/cpython-2.7.11-ucs4/lib:${LD_LIBRARY_PATH} /opt/python/cp27-cp27mu/bin/pip install -r /root/requirements.txt && \
@@ -47,10 +46,7 @@ RUN LD_LIBRARY_PATH=/opt/_internal/cpython-2.7.11-ucs4/lib:${LD_LIBRARY_PATH} /o
4746
RUN LD_LIBRARY_PATH=/opt/_internal/cpython-2.7.11-ucs4/lib:${LD_LIBRARY_PATH} /opt/python/cp27-cp27mu/bin/pip install pre-commit 'ipython==5.3.0' opencv-python && \
4847
LD_LIBRARY_PATH=/opt/_internal/cpython-2.7.11-ucs2/lib:${LD_LIBRARY_PATH} /opt/python/cp27-cp27m/bin/pip install pre-commit 'ipython==5.3.0' opencv-python
4948

50-
RUN wget -O /opt/swig-2.0.12.tar.gz https://sourceforge.net/projects/swig/files/swig/swig-2.0.12/swig-2.0.12.tar.gz/download && \
49+
RUN wget -O /opt/swig-2.0.12.tar.gz https://cytranet.dl.sourceforge.net/project/swig/swig/swig-2.0.12/swig-2.0.12.tar.gz && \
5150
cd /opt && tar xzf swig-2.0.12.tar.gz && cd /opt/swig-2.0.12 && ./configure && make && make install && cd /opt && rm swig-2.0.12.tar.gz
5251

53-
RUN mkdir -p /src && cd /src && git clone https://github.com/NVIDIA/nccl.git nccl && cd nccl &&\
54-
make -j `nproc` install <NCCL_MAKE_OPTS> && cd .. && rm -rf nccl
55-
5652
CMD ["bash", "/paddle/paddle/scripts/docker/build.sh"]
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/bin/bash
2+
DEB="nccl-repo-ubuntu1604-2.1.4-ga-cuda8.0_1-1_amd64.deb"
3+
DIR="/nccl2"
4+
mkdir -p $DIR
5+
# we cached the nccl2 deb package in BOS, so we can download it with wget
6+
# install nccl2: http://docs.nvidia.com/deeplearning/sdk/nccl-install-guide/index.html#down
7+
wget -O $DIR/$DEB \
8+
"http://nccl2-deb.gz.bcebos.com/nccl-repo-ubuntu1604-2.1.4-ga-cuda8.0_1-1_amd64.deb?responseContentDisposition=attachment"
9+
10+
cd $DIR && ar x $DEB && tar xf data.tar.xz
11+
DEBS=$(find ./var/ -name "*.deb")
12+
for sub_deb in $DEBS; do
13+
echo $sub_deb
14+
ar x $sub_deb && tar xf data.tar.xz
15+
done
16+
mv -f usr/include/nccl.h /usr/local/include/
17+
mv -f usr/lib/libnccl* /usr/local/lib/
18+
rm -rf $DIR

0 commit comments

Comments
 (0)