그래픽 처리 장치(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에서 기존 Notebook 런타임을 확장하여 다음 환경 변수를 설정하면 GPU 가속 컨테이너의 NVIDIA Container Runtime을 사용할 수 있습니다.
GPU 지원을 활용할 수 있는 다른 Python 모듈을 설치할 수도 있습니다. Dockerfile을 생성하려면 Notebook 런타임 확장에 나와 있는 단계를 따르세요.# Specify the existing notebook runtime imageId as FROM FROM <imageID> # 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"
다음 단계에 따라 기존 Notebook 런타임의 imageId를 확인합니다. https://notebookserver.domain.com:11443/arcgis/admin에서 ArcGIS Notebook Server 관리자 디렉터리에 로그인하고 Notebook > 런타임으로 이동합니다. GPU 지원 런타임의 기본으로 사용할 런타임을 선택하고 이미지 ID 등록정보를 확인합니다.
- https://notebookserver.domain.com:11443/arcgis/admin에서 ArcGIS Notebook Server 관리자 디렉터리에 로그인합니다.
- Notebook > 런타임을 클릭합니다.
- GPU 지원 런타임의 기본으로 사용할 런타임을 선택하고 이미지 ID 등록정보를 확인합니다.
- 다음 명령 구문을 사용하여 사용자 정의 컨테이너 이미지를 만듭니다.
명령 끝부분에 마침표를 포함해야 합니다.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 > 런타임으로 이동하여 4단계에서 선택한 런타임을 선택하고 편집을 클릭합니다.
- 새로운 사용자 설정 이미지가 사용되도록 런타임을 업데이트합니다. 기존 imageId 값을 6단계에서 가져온 이미지 값으로 바꿉니다.
- dockerRuntime 값을 nvidia로 설정합니다. 편집 내용을 저장합니다.
- ArcGIS Notebook Server가 NVIDIA GPU를 사용하도록 구성되었는지 확인합니다. Notebook 생성 및 편집 권한 또는 Advanced Notebooks 권한이 있는 포털 구성원이며 4단계에서 고급 런타임을 선택한 경우 새 Notebook을 엽니다. 다음을 셀에 복사한 후 해당 셀을 실행합니다.
torch.cuda 패키지는 GPU가 실행되어야 하므로 True가 결과로 반환되어야 합니다.import torch torch.cuda.is_available()
- 새 셀의 다음 명령을 실행하여 머신의 GPU 구성을 확인합니다.
!nvidia-smi
GPU를 사용하기 위해 ArcGIS Notebook Server 사이트 용량을 비우려면 관리자 디렉터리에서 팩터리 런타임 복원 작업을 실행합니다. 이 작업은 URL(https://notebookserver.domain.com:11443/arcgis/admin/notebooks/runtimes/restore)에서 수행할 수 있습니다.