ABCI로 기계 학습 환경을 폭속으로 구축

0. 개요



ABCI라는 스파콘적인 AI 연구를 위한 하드웨어 리소스 기반이 굉장하다.
htps : // 아 b시. 아이 / 그럼 /

사용해 보려고 했는데, 사용까지가 상당히 어렵기 때문에 정리해 보았다.

간단히 다음 절차가 필요합니다.
  • 계정 등록
  • 공개 키 등록
  • as에 로그인
  • es에 로그인
  • 계산 노드에 로그인
  • GPU를 사용할 수 있다!

  • TL;DR



    다음 세 단계로 계산 노드에 연결할 수 있습니다.
    host$ ssh <YOUR_USERNAME>@as.abci.ai -L 10022:es:22
    host$ ssh -XC -p 10022 -l <YOUR_USERNAME> localhost
    es$ qrsh -g <YOUR_GROUPNAME> -l rt_F=1 -pty yes -display $DISPLAY -v TERM /bin/bash
    

    1. 환경 구축



    계산 노드에 접속할 때까지 환경 구축을 실시한다.

    1.1. 계정 등록



    아래 웹사이트에서 신청하여 계정 발급
    htps : // 아 b시. 아이 / 자 / 호 w_와 _ 우세 / 메 m 베 r. HTML
    그런 다음 계정과 임시 비밀번호를 사용하여 로그인합니다.

    1.2. 공개키 등록



    ABCI 이용 포털에 접속하여 공개키를 등록한다.


    1.3. SSH 로그인 (to as)



    ACBI에 공개키로 로그인한다.

    개요




    이 때, 로그인하는 머신은 ACBI내의 as 이지만, 포워딩되어es1 ~ es4 어느 쪽인가에 로그인하게 된다.es 는 1인당 32MB 정도밖에 할당되지 않고, 또 GPU등도 이용할 수 없다.
    따라서 유료 기계의 계산 노드에 연결해야합니다.

    as 에 ssh


    teraterm 등의 ssh 클라이언트를 사용해 로그인을 실시한다.
    $ ssh <YOUR_USERNAME>@as.abci.ai -L 10022:es:22
    

    이런 느낌의 화면이 표시되면 성공이다.


    es 에 ssh



    그런 다음 es에 로그인합니다.teraterm 등의 ssh 클라이언트를 또 하나 열어 이하와 같이 입력한다
    $ ssh -p 10022 -l <YOUR_USERNAME> localhost
    

    이것으로 Welcome to ABCI System 등으로 표시되면 성공이다.

    1.4. 계산 노드에 연결


    es 에 연결한 곳에서, 단지 허브이다.
    이제 계산 노드를 사용합니다. 계산 노드의 이용은 유료이다. 이번에는 그룹 단위로 빌리고 있다고 한다.
    es 내에서 다음 명령 실행
    $ qrsh -g group -l resource_type=num [options]
    

    예를 들면 다음과 같이 한다 $ qrsh -g gabxxxx -l rt_F=1 .
    리소스 유형은 다음과 같습니다.


    재밌게 nvidia-smi -l를 실행하면 ...
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 440.33.01    Driver Version: 440.33.01    CUDA Version: 10.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |===============================+======================+======================|
    |   0  Tesla V100-SXM2...  On   | 00000000:3D:00.0 Off |                    0 |
    | N/A   25C    P0    41W / 300W |      0MiB / 16160MiB |      0%      Default |
    +-------------------------------+----------------------+----------------------+
    |   1  Tesla V100-SXM2...  On   | 00000000:3E:00.0 Off |                    0 |
    | N/A   23C    P0    40W / 300W |      0MiB / 16160MiB |      0%      Default |
    +-------------------------------+----------------------+----------------------+
    |   2  Tesla V100-SXM2...  On   | 00000000:B1:00.0 Off |                    0 |
    | N/A   23C    P0    42W / 300W |      0MiB / 16160MiB |      0%      Default |
    +-------------------------------+----------------------+----------------------+
    |   3  Tesla V100-SXM2...  On   | 00000000:B2:00.0 Off |                    0 |
    | N/A   25C    P0    42W / 300W |      0MiB / 16160MiB |      0%      Default |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                       GPU Memory |
    |  GPU       PID   Type   Process name                             Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+
    

    1.5. Display 변수를 인계하여 연결



    우선 as 에 연결한 상태에서 다음과 같이 접속한다.
    단지 Display 변수를 인계해 건네주고 있을 뿐이다.
    host$ ssh -XC -p 10022 -l <YOUR_USERNAME> localhost
    es$ qrsh -g <YOUR_GROUPNAME> -l rt_F=1 -pty yes -display $DISPLAY -v TERM /bin/bash
    

    2. 기계 학습 환경



    우선, Tensorflow와 Keras를 넣어 본다.

    2.1. 첫회



    계산 노드에 로그인한 상태에서 다음을 수행한다.
    g0001$ module load python/3.6/3.6.5 cuda/10.0/10.0.130.1 cudnn/7.6/7.6.5
    g0001$ python3 -m venv ~/venv/tensorflow-keras
    g0001$ source ~/venv/tensorflow-keras/bin/activate
    (tensorflow-keras) g0001$ pip3 install --upgrade pip setuptools
    (tensorflow-keras) g0001$ pip3 install tensorflow-gpu==1.15 keras
    

    이것으로 tensorflowkeras의 설치가 끝났습니다.

    2.2. 2번째 이후



    간단!
    g0001$ module load python/3.6/3.6.5 cuda/10.0/10.0.130.1 cudnn/7.6/7.6.5
    g0001$ source ~/venv/tensorflow-keras/bin/activate
    

    99. 그 후

    좋은 웹페이지 즐겨찾기