봉자씨
친절한 봉자씨의 딥러닝 이야기
봉자씨
전체 방문자
오늘
어제
  • 분류 전체보기 (144)
    • 개발 (25)
      • 딥러닝 단어장 (2)
      • MLOps (6)
      • 딥러닝, Computer Vision (3)
      • Pytorch (0)
      • Develop (5)
      • Kubernetes (4)
      • 대학원생의 좌충우돌 GPU 클러스터 구축기 (3)
      • LangChain (1)
    • 경제 (115)
      • 경제 용어 단어장 (0)
      • 경제일기 (113)

인기 글

최근 글

블로그 메뉴

  • 홈
  • 태그
  • Github

공지사항

최근 댓글

태그

  • 딥러닝
  • 위스키
  • fomc
  • 중국리오프닝
  • 자이언트스탭
  • kserve
  • k8s
  • CPI
  • 금리인상
  • 은행파산
  • SVB
  • Kubeflow
  • Kubernetes
  • 금리인하
  • 주식
  • SVB파산
  • MLOps
  • 금리동결
  • AI
  • 인플레이션
  • 경제일기
  • ChatGPT
  • 채권
  • 금리
  • 대출부실
  • kubectl
  • 장단기금리차
  • 빅스탭
  • 부동산
  • 경기침체

티스토리

250x250
hELLO · Designed By 정상우.
봉자씨

친절한 봉자씨의 딥러닝 이야기

개발/대학원생의 좌충우돌 GPU 클러스터 구축기

007. [대학원생의 좌충우돌 GPU 클러스터 구축기] 1. 놀고있는 GPU 찾아내기!!

2021. 7. 29. 21:14
반응형

석사 입학후 나는 인프라 관리자를 맡게 되었다. 그전에도 관련일을 하긴했지만 전담으로 하진 않았으나 이제 엄연히 "관리자"라는 직책(?)을 부여받았다.

앞선 글에서도 이야기했지만 당시에는 모든 서버 할당을 관리자가 수동으로 했다. GPU 사용 요청이 들어오면 어느GPU가 사용되는지 어느 GPU가 놀고있는지 모니터링하고있다가 비어있는 GPU에 할당해주면 된다! 연구실에서 이런 일만 했다면 참 좋았겠지만! 석사과정 학생이었기에 수업도 들어야하고 논문도 써야하고 프로젝트도 해야해서 항상 시간이 부족했다. 또 관리하는 서버가 한두개 였다면 nvidia-smi(gpu 사용량 모니터링 명령어)를 서버에 들어가서 한두번 치면 되겠지만 5대를 넘어가니 매번들어가서 치는일이 정말 귀찮고 오래걸렸다.

그래서! 나는 왜 서버 여러대를 한번에 모니터링하는 명령어가 없는가! 해서 직접 만들기로 했다. 딥러닝은 보통 파이썬으로 코딩하기때문에 파이썬이 익숙했던 나는 며칠만에 뚝딱뚝딱 코딩을 해서 여러 서버를 모니터링 할수 있는 프로그램을 만들었다! 이름은 kairos-smi! 아이디인 kairos와 gpu 모니터링 명령어인 nvidia-smi를 합쳐서 만들었다.
전공자를 위해 간단히 설명을 하면 python의 subprocess를 통해 모든 gpu노드에 ssh로 nvidia-smi명령을 날리고 날아오는 값을 parsing해서 다시 띄워주는 간단한(?) 프로그램이다. 지금 다시 보면 부족한 부분이 많긴하다. ㅎㅎ 하지만~ 연구실에서 써보니 한번의 명령으로 다 볼수 있어서 정말 편리했고 덕분에 하나하나 서버에 안들어가도 되어서 업무시간이 1/10으로 줄어들었다! 쓰다보니 나혼자만 쓰기 아까워서 커뮤니티에 공유해야겠다는 생각이 들었고 오픈소스로 만들어서 공유도 했다!

https://github.com/kairos03/kairos-smi

 

GitHub - kairos03/kairos-smi: multi server gpu monitoring utils

multi server gpu monitoring utils. Contribute to kairos03/kairos-smi development by creating an account on GitHub.

github.com


(들어와서 오른쪽 위에 별하나씩만 눌러주세요~~)

나름 업무간이 많이 줄어서 만했지만 수동으로당하는 작업이 궁극적으로 사라지진 않았다. 진짜 자동화 하려고 "자자 ksmi써서 알아서 비어있는 쓰세요"도 해봤는데.. 음.. 그래도 관리자가 있어야겠구나 생각을 하게되어서 일주일만에 그만뒀다. 더 진보함 형태를 어떻게 할수 있을까 고민을 했고 그 끝에 클러스터를 만들자! 하는 해답이 있었다.

다음에 계속.

반응형

'개발 > 대학원생의 좌충우돌 GPU 클러스터 구축기' 카테고리의 다른 글

010. [대학원생의 좌충우돌 GPU 클러스터 구축기] 2. GPU 클러스터 만들기(Kubernetes)!  (3) 2022.07.06
006. [대학원생의 좌충우돌 GPU 클러스터 구축기] 0. 맨땅에 헤딩하기  (1) 2021.03.19
    '개발/대학원생의 좌충우돌 GPU 클러스터 구축기' 카테고리의 다른 글
    • 010. [대학원생의 좌충우돌 GPU 클러스터 구축기] 2. GPU 클러스터 만들기(Kubernetes)!
    • 006. [대학원생의 좌충우돌 GPU 클러스터 구축기] 0. 맨땅에 헤딩하기
    봉자씨
    봉자씨
    인공지능, 딥러닝, MLOps 이야기로 여러분을 찾아갑니다!

    티스토리툴바