본문 바로가기
C.W.K.
Stream
Lesson 07 of 12 · published

GPU 러너

~11 min · gpu, runners, cost

Level 0견습생
0 XP0/101 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

GPU 워크로드 어디서 돌릴까

깃허브에서 제공하는 기본 호스팅 러너에는 GPU가 없어. 그래서 다음 세 가지 옵션을 쓸 수 있어.

1) 깃허브 대형 러너(GPU)

  • 조직 수준에서 사용할 수 있어. NVIDIA T4나 A10 옵션이 있지.
  • 활성화하기 쉬워. 기존 runs-on: 라벨 문법을 그대로 쓰면 되거든.
  • 분 단위로 요금을 매겨. 가끔 GPU를 쓰는 CI에는 꽤 합리적인 선택이야.

2) 자체 호스팅 GPU 러너

  • 네가 가진 머신(홈랩 리눅스 박스나 MLX 작업용 애플 실리콘 맥)에 직접 설정해.
  • 라벨로 태그를 달아: [self-hosted, gpu, linux-x64] 또는 [self-hosted, macos, apple-silicon].
  • 분당 요금은 무료야. 대신 전기세와 유지보수 비용은 네가 내야 해.
  • 계속 무거운 작업을 돌리거나, 영구 캐시가 필요하거나, 특수 하드웨어를 쓸 때 가장 좋아.

3) CI에서 서비스 형태로 쓰는 클라우드 GPU

  • 일반 리눅스 러너에서 Modal, RunPod, vast.ai, Lambda Cloud를 호출해.
  • 그쪽에서 GPU 작업을 실행하고 결과를 가져오는 거지.
  • 초 단위로 과금되고, 유휴 상태일 때는 0으로 스케일링돼.
  • 워크로드가 특정 시간에 몰리거나, 유지할 머신 풀이 없을 때 가장 좋아.

애플 실리콘 특수 케이스

애플 실리콘에서 MLX 작업을 하려면 자체 호스팅 맥 러너만 작동해. 깃허브의 호스팅 macOS 러너는 인텔 맥 가상 머신을 쓰기 때문에 MLX를 지원하지 않거든. 평가 스위트에 MLX가 포함되어 있다면 사무실 맥에 자체 호스팅 러너를 설정해 둬.

Code

Apple Silicon MLX 자체 호스팅 러너·yaml
  mlx-eval:
    runs-on: [self-hosted, macos, apple-silicon]
    timeout-minutes: 30
    steps:
      - uses: actions/checkout@v4
      - name: Activate mlx env (preset on the runner)
        run: |
          source ~/miniconda3/etc/profile.d/conda.sh
          conda activate mlx
          pip install -U mlx mlx-lm  # always latest, MLX is fast-moving
      - run: |
          source ~/miniconda3/etc/profile.d/conda.sh && conda activate mlx
          pytest tests/mlx/ -q

External links

Exercise

GPU 워크로드(PyTorch, MLX, JAX, 머신러닝 학습 등)가 있다면, 네 사용 패턴에서 가장 저렴한 러너 옵션을 골라봐. 첫 GPU 작업의 콜드 스타트와 웜 스타트 시간을 재봐. 그걸 통해 가중치 캐시가 바이트만큼의 가치가 있는지 알 수 있거든.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.