jetson으로 심층 학습을 하는 환경을 정돈한다

소개


  • jetson은 arm 아키텍처이므로 환경 구축이 번거롭습니다
  • nvidia 공식 jetson 용 심층 학습 이미지가있다 nvidia NGC
  • vscode를 사용하여 편안하게 개발하고 싶습니다

  • 흐름


  • vscode 설치
  • vscode에 docker extention 설치
  • dockerhub에서 이미지 pull
  • 컨테이너 시작
  • vscode로 컨테이너에 연결

  • vscode 설치



    여기에서 다운로드하여 설치할 수 있습니다.

    jetson은 arm 아키텍처이므로 ARM64를 선택하십시오.

    docker extention 설치



    vscode 확장에서 도커을 설치하십시오.


    이미지를 풀다



    nvidia NGC에서 jetson 용 이미지를 pull하십시오. 이번에는 pytorch를 사용하고 싶으므로
    jetpack 버전에 맞춰야 하므로 jetpack 버전을 확인합니다.
    > dpkg-query --show nvidia-l4t-core
    nvidia-l4t-core 32.4.4-20201016123640
    

    이 버전에 있던 것을 pull합니다.
    docker pull nvcr.io/nvidia/l4t-pytorch:r32.4.4-pth1.6-py3
    

    컨테이너를 시작



    터미널에서
    docker run --rm --runtime nvidia --network host -v /home/user/project:/location/in/container nvcr.io/nvidia/l4t-pytorch:r32.4.4-pth1.6-py3
    

    를 입력하면 컨테이너가 시작됩니다.
    --rm (은)는 컨테이너 종료시에 자동적으로 컨테이너를 삭제하는 명령 (삭제하고 싶지 않은 경우는 --rm 명령을 붙이지 않는다)
    --runtime nvidia 이것을 붙이면 jetson의 cuda 환경을 docker에 제공할 수 있다
    -v : 왼쪽이 마운트 하고 싶은 호스트의 파일 패스 (절대 패스가 아니면 안되는 것 같다). 오른쪽이 컨테이너내의 파일의 두는 장소.



    docker extension에서 컨테이너가 일어나는 것을 볼 수 있습니다.

    vscode로 컨테이너에 연결



    vscode의 docker extension에서 컨테이너가 시작되는 컨테이너에서 마우스 오른쪽 버튼을 클릭하고 attach visual studio code를 선택합니다.


    vscode로 개발할 환경이 갖추어졌습니다.

    실제로 움직이는지 확인



    GPU가 인식되는지 확인합시다.
    import torch
    # GPUの確認
    use_cuda = torch.cuda.is_available()
    print('Use CUDA:', use_cuda)
    

    실행 결과는 다음과 같습니다.
    Use CUDA: True
    

    docker 컨테이너에서 GPU를 사용하여 심층 학습을 개발할 수 있습니다.

    좋은 웹페이지 즐겨찾기