콘텐츠로 이동

빠른 시작

이 문서는 공유 GPU 워크스테이션에서 LabPod 계정을 막 발급받은 연구자를 위한 안내입니다. 약 5분 안에 로그인하고, 워크스페이스를 만들고, GPU에서 작업을 실행한 뒤 깔끔하게 종료하는 방법을 살펴보겠습니다.

아직 계정이 없다면 서버를 운영하는 담당자에게 문의하세요. 운영자가 계정을 생성하고 비밀번호를 설정해 줍니다. (운영자 가이드: 사용자 및 할당량 참고)

관리자가 안내한 URL을 엽니다. 예: http://lab-gpu.example.local:24680

LabPod 로그인 페이지

  • 사용자 이름: 워크스테이션의 Linux 계정과 동일합니다.
  • 비밀번호: 관리자가 설정한 LabPod 비밀번호입니다. Linux 비밀번호와는 별개입니다.

워크스페이스는 공유 호스트에서 사용자의 Linux 계정으로 실행되는 Podman 컨테이너입니다. CPU, 메모리, GPU, 디스크 제한은 할당량에 따라 사용자마다 따로 적용됩니다.

  1. 워크스페이스 목록 페이지 우상단의 만들기를 클릭합니다.

  2. 템플릿을 선택합니다. 기본적으로 활성화된 템플릿:

    • PyTorch JupyterLab: 대부분의 사용자를 위한 기본값이며 GPU를 바로 사용할 수 있습니다.
    • TensorFlow JupyterLab: JupyterLab + TensorFlow, TensorBoard 런처 포함.
    • Data Science JupyterLab (CPU): NumPy, SciPy, pandas, scikit-learn, matplotlib.
    • Code Server: 브라우저에서 사용하는 VS Code로, Open VSX 확장을 지원합니다.

    관리자는 추가로 opt-in 템플릿을 활성화할 수도 있습니다. 예를 들어 CUDA Composite Workspace(JupyterLab, TensorBoard, code-server, 터미널, MLflow 사전 설치), MS Code Serve-Web(Microsoft 공식 VS Code; EULA 동의 필요) 등이 있습니다. 전체 목록은 워크스페이스 & 템플릿을 참고하세요.

  3. GPU 모드를 선택합니다:

    • 없음: CPU 전용.
    • 전체 GPU: 하나 이상의 GPU를 단독으로 사용합니다 (할당량 내에서).
    • 분할 GPU: VRAM 비율로 카드를 공유합니다 (예: 24 GB 카드의 0.25 ≈ 6 GB). 관리자가 분할 GPU 공유를 활성화한 경우에만 사용 가능합니다.
    • MIG: A100/H100 하드웨어 파티션으로, 관리자가 슬라이스를 설정한 경우에만 사용 가능합니다.
  4. 만들기를 클릭합니다.

전체 내용은 워크스페이스 & 템플릿GPU 사용하기를 참고하세요.

실행 중인 워크스페이스와 할당량 요약을 보여주는 워크스페이스 목록

목록에서 워크스페이스를 클릭합니다. 상세 페이지에서 다음을 확인할 수 있습니다:

  • : 각 런처(JupyterLab, 터미널, TensorBoard, MLflow 등)별 카드입니다. 런처에서 시작을 클릭한 후 열기를 클릭하면 새 탭에서 실행됩니다.
  • 추가 앱: 직접 실행하는 도구(Gradio, Streamlit, 추가 TensorBoard 등)의 포트를 선언할 수 있습니다. 추가 앱 & 포트를 참고하세요.

워크스페이스 URL은 경로 기반이며 LabPod 세션 쿠키로 보호됩니다. 예를 들어 http://<host>:24681/ws/<id>/jupyter/를 사용합니다. LabPod은 이 URL을 인접한 워크스페이스 게이트웨이로 리디렉션하므로 예전 플랫폼 /ws/ 형식을 북마크하지 말고 관리자가 준 플랫폼 URL에서 시작하세요.

LabPod 터미널(또는 JupyterLab 내부 터미널)을 열고 평소대로 작업하세요:

Terminal window
nvidia-smi # confirm the GPU is visible
python train.py
tensorboard --logdir runs/ --bind_all # then open the TensorBoard launcher

장시간 실행이 필요한 경우 브라우저 탭을 닫아도 됩니다. 프로세스는 컨테이너 내부에서 계속 실행됩니다.

LabPod는 컨테이너의 /dev/shm을 메모리 제한의 절반으로 설정하므로 PyTorch의 DataLoader(num_workers>0)와 단일 컨테이너 멀티-GPU DDP (NCCL)가 바로 작동합니다. (podman run으로 직접 시작한 컨테이너에서 Bus error가 발생하는 경우 --shm-size를 추가하세요. Podman 기본값은 64 MB에 불과합니다.)

  • /work: 호스트의 ~/work가 자동으로 마운트됩니다. 재시작 및 워크스페이스 간에도 유지됩니다. 데이터셋, 체크포인트, 코드를 이곳에 저장하세요.
  • /home/<사용자명>: 워크스페이스별 홈 디렉터리로, conda 환경, dotfiles, 셸 기록이 해당 워크스페이스의 중지/시작 간에 유지됩니다.
  • 생성한 파일은 호스트에서 사용자 본인의 Linux 계정으로 표시되므로 (--userns keep-id) chown이 필요 없습니다.

전체 내용: 파일 & 스토리지

  • 실험이 끝나고 다른 사람에게 GPU가 필요할 때 중지합니다. 중지는 단계적으로 진행됩니다 (SIGTERM 후 종료).
  • 잠깐 자리를 비울 때는 중지하지 마세요. 컨테이너를 실행 상태로 두어도 부담이 없습니다.
  • 워크스페이스 구성과 컨테이너가 더 이상 필요 없을 때만 삭제를 사용하세요. 개인 홈은 계정 아래에 복구할 수 있도록 보관되며, /work는 호스트 마운트이므로 어떤 경우에도 보존됩니다.

워크스페이스가 저절로 중지된 경우

섹션 제목: “워크스페이스가 저절로 중지된 경우”

워크스페이스가 자동으로 중지될 수 있습니다. 대부분 OOM 종료 (메모리 제한 초과) 또는 호스트 재부팅이 원인입니다 (워크스페이스는 자동으로 다시 시작되지 않으므로 시작 버튼을 직접 클릭해야 합니다). 카드와 상세 페이지에서 원인을 확인할 수 있습니다. 워크스페이스 중지 시를 참고하세요.