그래픽 처리 장치(GPU)를 사용하면 머신 러닝 모델의 처리 시간을 신속하게 개선할 수 있습니다. 몇 가지 추가 단계를 수행하여 ArcGIS Notebook Server 에서 호스트 머신의 NVIDIA GPU를 활용할 수 있습니다.
ArcGIS Notebook Server를 설치하고 구성한 후 동일한 머신을 사용하여 다음 단계를 따르세요.
- 적합한 NVIDIA 드라이버를 머신에 설치합니다. 자세한 내용은 NVIDIA 웹사이트를 참고하세요.
- Notebook 컨테이너가 GPU를 활용할 수 있도록 머신에 nvidia-docker 2.0 런타임을 설치합니다. 특정 OS 관련 다운로드 및 설명서는 NVIDIA-Docker GitHub 저장소를 참조하세요.
- 다음 명령을 실행하여 NVIDIA 요소가 제대로 설치되었는지 확인합니다.
docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi
- Dockerfile에서 Advanced Notebook 런타임을 확장하여 다음 환경 변수를 설정하면 GPU 가속 컨테이너의 NVIDIA Container Runtime을 사용할 수 있습니다.
GPU 지원을 이용할 수 있는 다른 Python 모듈을 설치할 수도 있습니다. Dockerfile을 생성하려면 Notebook 런타임 확장에 나와 있는 단계를 따르세요.# Specify the existing notebook runtime imageId as FROM FROM aa7a1a346e5b # Use RUN to issue a command to install # Declare environment variables with ENV #RUN conda install <your_preferred_gpu_package> ENV NVIDIA_VISIBLE_DEVICES all ENV NVIDIA_DRIVER_CAPABILITIES compute,utility ENV NVIDIA_REQUIRE_CUDA "cuda>=9.2"
- 다음 명령 구문을 사용하여 사용자 정의 컨테이너 이미지를 만듭니다.
명령 끝부분에 마침표를 포함해야 합니다.docker build -t myGpuRuntime:v1.0 -f <path_to_Dockerfile> .
- 이미지가 만들어지면 결과 메시지에 새 이미지의 요약된 imageId가 제공됩니다. 새 컨테이너의 전체 imageId를 가져옵니다.
docker inspect <imageId>
- https://notebookserver.domain.com:11443/arcgis/admin에서 ArcGIS Notebook Server 관리자 디렉터리에 로그인합니다. Notebook > 런타임으로 이동하여 고급 런타임을 선택한 다음 편집을 클릭합니다.
- 새로운 사용자 정의 이미지가 사용되도록 고급 런타임을 업데이트합니다. 기존 imageId 값을 6단계에서 가져온 이미지 값으로 바꿉니다.
- dockerRuntime 값을 nvidia로 설정합니다. 편집 내용을 저장합니다.
- ArcGIS Notebook Server가 NVIDIA GPU를 사용하도록 구성되었는지 확인합니다. 고급 Notebook 권한을 가진 포털 구성원으로 새 Notebook을 엽니다. 다음을 셀에 복사한 후 해당 셀을 실행합니다.
True 패키지에서 GPU 실행이 필요하므로 torch.cuda가 결과로 반환되어야 합니다.import torch torch.cuda.is_available()
- 새 셀의 다음 명령을 실행하여 머신의 GPU 구성을 확인합니다.
!nvidia-smi
ArcGIS Notebook Server 사이트의 GPU 사용 기능을 제거하려면 관리자 디렉터리의 팩터리 런타임 복원 작업을 실행하세요. 이 작업은 URL https://notebookserver.domain.com:11443/arcgis/admin/notebooks/runtimes/restore에서 제공됩니다.