Ich habe mich für ChainerMN entschieden und eine Umgebung auf AWS erstellt, damit ich die Arbeit aufzeichnen kann.
AWS p2-Instanzen sind preisgünstig, sodass Sie Ihre Umgebung schnell fertigstellen möchten.
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install linux-generic
$ sudo apt-get install build-essential
$ vi .bashrc #Die folgenden zwei Zeilen wurden hinzugefügt
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
export CPATH="/usr/local/include"
Gehen Sie zu CUDA Toolkit Download, wählen Sie Linux, x86_64, Ubuntu, 16.04, deb [network] aus, rufen Sie den Download-Link auf und gehen Sie wie folgt vor: machen.
$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ sudo apt-get update
$ sudo apt-get install cuda nvidia-367
$ sudo reboot
$ sudo apt-get autoremove
$ rm cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ vi .bashrc #Die folgenden 4 Zeilen wurden hinzugefügt
export CUDA_HOME="/usr/local/cuda-8.0"
export PATH="$CUDA_HOME/bin:$PATH"
export LD_LIBRARY_PATH="$CUDA_HOME/lib64:$LD_LIBRARY_PATH"
export CPATH="$CUDA_HOME/include:$CPATH"
Nochmal anmelden.
Laden Sie cuDNN v5.1 (20. Januar 2017) für CUDA 8.0, cuDNN v5.1 Library für Linux unter cuDNN Download und AWS herunter Legen Sie es auf.
$ tar zxvf cudnn-8.0-linux-x64-v5.1.tgz
$ sudo cp -a cuda/lib64/* $CUDA_HOME/lib64/
$ sudo cp -a cuda/include/* $CUDA_HOME/include/
$ sudo ldconfig
$ rm -rf cuda cudnn-8.0-linux-x64-v5.1.tgz
In der Arbeit des vorherigen Abschnitts
$ sudo ldconfig
Als ich es tat
/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 is not a symbolic link
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 is not a symbolic link
Ich sollte es bekommen, also habe ich den symbolischen Link in der Arbeit unten wieder eingefügt.
$ sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
$ sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
$ sudo unlink /usr/lib/nvidia-375/libEGL.so
$ sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.66 /usr/lib/nvidia-375/libEGL.so
$ sudo unlink /usr/lib32/nvidia-375/libEGL.so
$ sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.66 /usr/lib32/nvidia-375/libEGL.so
$ sudo ldconfig
Ich weiß nicht, ob dies der Fall ist, aber ich kann es vorerst verwenden.
$ sudo vi /etc/default/grub #Bearbeiten Sie Zeile 12 für:
GRUB_CMDLINE_LINUX="systemd.unit=multi-user.target"
$ sudo update-grub
$ sudo reboot
Rufen Sie den Open MPI-Download-Link von Open MPI Open Source High Performance Computing auf und gehen Sie wie folgt vor:
$ wget https://www.open-mpi.org/software/ompi/v2.1/downloads/openmpi-2.1.1.tar.bz2
$ tar jxvf openmpi-2.1.1.tar.bz2
$ cd openmpi-2.1.1
$ ./configure --with-cuda
$ make -j4
$ sudo make install
$ cd
$ rm -rf openmpi-2.1.1 openmpi-2.1.1.tar.bz2
$ git clone https://github.com/NVIDIA/nccl.git
$ cd nccl
$ make CUDA_HOME=/usr/local/cuda-8.0
$ sudo mkdir /usr/local/nccl
$ sudo make PREFIX=/usr/local/nccl install
$ cd
$ rm -rf nccl
$ vi .bashrc #Die folgenden 4 Zeilen wurden hinzugefügt
export NCCL_ROOT="/usr/local/nccl"
export CPATH="$NCCL_ROOT/include:$CPATH"
export LD_LIBRARY_PATH="$NCCL_ROOT/lib/:$LD_LIBRARY_PATH"
export LIBRARY_PATH="$NCCL_ROOT/lib/:$LIBRARY_PATH"
Nochmal anmelden.
$ sudo apt-get install python3-pip
$ sudo pip3 install --upgrade pip
$ pip3 install --user pillow h5py chainer\==1.24.0
$ pip3 install --user cython
$ pip3 install --user chainermn
Gemäß der Referenz Inoffizielle Tipps für Personen, die Chainer 1.5 nicht installieren können müssen LD_LIBRARY_PATH und CPATH vor der Installation von Cython festgelegt werden. .. Beachten Sie auch, dass die Umgebungsvariablen nicht von root geerbt werden, wenn Sie mit sudo pipen. Lass es uns mit --user machen.
Recommended Posts