아래 경로로 가보시면 Minsky, AC922 서버에서 사용 가능하도록 미리 cuda를 버전별로 설치해놓은 ppc64le용 Docker 이미지들이 보입니다.
https://hub.docker.com/r/nvidia/cuda-ppc64le/
다만 위 링크에서는 Ubuntu와 CentOS에 대해서만 Docker Image를 제공하므로, Redhat 7.5 Base 에서 CUDA 9.2 버전의 base, runtime 관련 패키지를 설치하여 새로운 Docker image 를 만들었습니다. 아래는 Dockerfile 입니다. 미리 RHEL 7.5 base 를 Docker image 형태로 만들어두었으며, Host 서버에서는 RHEL subscription이 등록되어 있어야 합니다. (RHEL에서 제공하는 각 rpms 패키지들을 repository로 미리 등록해두고 사용하기 위해서입니다.)
# vi Dockerfile
#FROM registry.access.redhat.com/rhel7.5:latest
FROM brlee/rhel7.5_base_ppc64le:latest
RUN wget -P /docker http://developer.download.nvidia.com/compute/cuda/repos/rhel7/ppc64le/cuda-repo-rhel7-9.2.148-1.ppc64le.rpm
RUN rpm -i /docker/cuda-repo-rhel7-9.2.148-1.ppc64le.rpm
RUN yum repolist
# Update image
# 'local' means rhel local repository
# To use these repos below in building process, you must set up the RHEL subscription and enable these repos on your host system first.
RUN yum-config-manager --enable local
RUN yum-config-manager --enable rhel-7-for-power-9-rpms
RUN yum-config-manager --enable rhel-7-for-power-9-optional-rpms
RUN yum-config-manager --enable rhel-7-for-power-9-extras-rpms
ENV CUDA_VERSION 9.2.148
ENV CUDA_PKG_VERSION $CUDA_VERSION-1
ENV CUDA_PKG_INSTALL_VERSION 9-2
RUN yum install -y \
cuda-cudart-$CUDA_PKG_INSTALL_VERSION && \
ln -s cuda-9.2 /usr/local/cuda
RUN yum install -y \
cuda-libraries-$CUDA_PKG_INSTALL_VERSION \
cuda-nvtx-$CUDA_PKG_INSTALL_VERSION
#RUN yum install -y \
# cuda-libraries-dev-$CUDA_PKG_INSTALL_VERSION \
# cuda-nvml-dev-$CUDA_PKG_INSTALL_VERSION \
# cuda-minimal-build-$CUDA_PKG_INSTALL_VERSION \
# cuda-command-line-tools-$CUDA_PKG_INSTALL_VERSION && \
# rm -rf /var/cache/yum/*
# nvidia-docker 1.0
LABEL com.nvidia.volumes.needed="nvidia_driver"
LABEL com.nvidia.cuda.version="${CUDA_VERSION}"
RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \
echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf
ENV PATH /usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH}
ENV LD_LIBRARY_PATH /usr/local/nvidia/lib:/usr/local/nvidia/lib64:/usr/local/cuda/lib64/stubs
# nvidia-container-runtime
ENV NVIDIA_VISIBLE_DEVICES all
ENV NVIDIA_DRIVER_CAPABILITIES compute,utility
ENV NVIDIA_REQUIRE_CUDA "cuda>=9.2"
RUN yum clean all && rm -rf /var/cache/yum/*
[root@p57a22 files]# docker build -t brlee/ppc64le_cuda:rhel7.5_cuda9.2_runtime .
Sending build context to Docker daemon 3.255 GB
Step 1/23 : FROM brlee/rhel7.5_base_ppc64le:latest
---> 42a89e2543ed
[root@p57a22 files]# docker tag f32309318e81 brlee/ppc64le_cuda:latest
[root@p57a22 files]# docker push brlee/ppc64le_cuda:latest
[root@p57a22 files]# docker push brlee/ppc64le_cuda:rhel7.5_cuda9.2_runtime
아래의 명령어로 RHEL 7.5, Cuda9.2 runtime을 제공하는 Docker image를 받아서 사용하실 수 있습니다.
# docker pull brlee/rhel7.5_base_ppc64le:latest
# docker pull brlee/ppc64le_cuda:rhel7.5_cuda9.2_runtime
댓글 없음:
댓글 쓰기