Offcanvas

AI / 데이터센터 / 머신러닝|딥러닝 / 애플리케이션 / 클라우드

칼럼 | 머신러닝 애플리케이션에 GPU를 최대한 활용하는 법

2024.03.13 Kevin Cochrane  |  InfoWorld
AI 및 머신러닝 애플리케이션을 개발하려면 충분한 GPU 성능이 필요하다. 이를 온프레미스에서 실행해야 할까, 아니면 클라우드에서 실행해야 할까?
 
ⓒ Getty Images Bank

그래픽 처리 장치(GPU)가 그래픽 집약적인 게임이나 비디오 스트리밍 영역에서만 사용되던 때도 있지만, 이제는 머신러닝(ML)과도 밀접하게 연관돼 있다. 작업을 분산해 여러 개의 동시 계산을 수행할 수 있는 능력이 ML 워크로드 처리 속도를 크게 향상하기 때문에 GPU는 인공지능 애플리케이션을 구동하는 데 이상적이라고 평가된다.

GPU의 단일 명령어 다중 데이터(SIMD) 스트림 아키텍처는 데이터 과학자들이 복잡한 작업을 여러 개의 작은 단위로 나눌 수 있게 해준다. 이 때문에 AI 및 ML 이니셔티브를 추구하는 기업은 이제 알고리즘이 복잡하고 하드웨어 집약적인 머신러닝 워크로드에서 대규모 데이터 세트를 빠르게 분석하기 위해 중앙 처리 장치(CPU) 대신 GPU를 선택할 가능성이 높아졌다. 특히 대규모 언어 모델(LLM)과 이를 기반으로 구축된 생성형 AI 애플리케이션에 주로 해당된다.

하지만 단가가 낮은 CPU도 병렬 처리가 불필요한 특정 머신러닝 작업을 실행할 수는 있다. 여기에는 자연어 처리(NLP)와 같은 통계 연산을 수행하는 알고리즘과 일부 딥러닝 알고리즘이 포함된다. 원격 측정 및 네트워크 라우팅, CCTV 카메라의 물체 인식, 제조업의 결함 감지, CT 및 MRI 스캔의 물체 감지 등 CPU에 적합한 AI 사용 사례도 있다.

GPU 기반 앱 개발 활성화
위의 CPU 사용 사례는 계속해서 비즈니스에 이점을 주고 있지만, 생성형 AI의 발전으로 인해 더 많은 GPU가 요구되고 있다. 이런 경향은 전반적으로 GPU 제조업체, 특히 이 분야의 독보적인 리더인 엔비디아에게 큰 도움이 되고 있다. 하지만 전 세계적으로 GPU 수요가 늘어나면서 많은 기업이 GPU 스택을 구성하고 GPU에서 개발하기가 쉽지 않다는 것을 깨닫고 있다.

이런 문제를 극복하기 위해 엔비디아와 다른 조직에서는 개발자가 ML 워크로드를 쉽게 관리하고 고성능 코드를 작성할 수 있도록 다양한 도구 세트와 프레임워크를 도입했다. 여기에는 파이토치(PyTorch) 및 텐서플로우(TensorFlow) 등 GPU에 최적화된 딥러닝 프레임워크와 엔비디아의 쿠다(CUDA) 프레임워크가 있다. 쿠다 프레임워크는 연구자와 데이터 과학자를 위한 GPU 작업 가속화의 판도를 바꿔놨다고 해도 과언이 아니다.

온프레미스 GPU 대 클라우드 GPU
많은 머신러닝 워크로드를 실행하는 데 CPU보다 GPU가 선호된다는 점을 고려할 때, 기업이 수행하는 AI 및 ML 이니셔티브에 적합한 배포 방식(온프레미스 또는 클라우드 기반)이 무엇인지 이해할 필요가 있다.

온프레미스에 GPU를 배포하려면 기업은 자체 GPU를 구매하고 구성해야 한다. 이를 위해서는 GPU 비용과 전용 데이터센터 구축에 상당히 투자해야 하며, 이 2가지를 유지 관리하는 데 드는 운영 비용도 만만치 않다. 하지만 이 방식은 소유의 이점을 누릴 수 있다. 개발자는 클라우드 기반 GPU 배포와 달리 추가 사용 비용 없이 자유롭게 실험하고 끝없이 반복해 볼 수 있다. 

반면 클라우드 기반 GPU는 종량제 모델로 GPU 사용량을 즉시 늘리거나 줄일 수 있다. 클라우드 GPU 서비스 기업은 GPU 클라우드 인프라와 관련된 모든 작업을 처리하는 전담 지원팀을 제공한다. 이러한 방식으로 클라우드 GPU 서비스 기업은 서비스를 빠르게 시작할 수 있도록 지원하기 때문에 사용자는 시간을 절약하고 책임을 줄일 수 있다. 또한 개발자는 최신 기술과 현재 ML 사용 사례에 적합한 GPU에 액세스할 수 있다.

하이브리드 GPU 배포로 2가지 장점을 모두 얻는 것도 가능하다. 이 접근 방식에서 개발자는 온프레미스 GPU로 모델을 테스트 및 훈련하고 클라우드 기반 GPU를 서비스 확장 및 회복 탄력성 향상에 활용할 수 있다. 하이브리드 배포를 통해 기업은 데이터센터 운영과 가까운 곳에서 GPU 리소스를 사용하도록 보장하면서 자본 비용과 운영 비용 간의 지출 균형을 맞출 수 있다.

머신러닝 워크로드 최적화
GPU 작업은 구성과 앱 개발 측면에서 모두 까다로운 작업이다. 온프레미스 배포를 선택하는 기업은 개발자가 운영에 적합한 환경을 준비할 때 반복적인 절차를 거쳐야 하기 때문에 생산성 손실을 경험하기 쉽다.

작업을 수행하기 위해 GPU를 준비하려면 다음 작업을 완료해야 한다.

- GPU와 상호 작용하고 추가 GPU 작업을 수행하기 위해 쿠다 드라이버 및 쿠다 툴킷을 설치 및 구성한다. 
- 필요한 쿠다 라이브러리를 설치해 GPU 효율성을 극대화하고 GPU의 연산 리소스를 활용한다.
- 학습, 추론, 미세 조정 등 머신러닝 워크로드를 수행하기 위해 텐서플로우, 파이토치 등의 딥러닝 프레임워크를 설치한다.
- 코드를 실행하고 테스트할 수 있는 주피터랩(JupyterLab)과 컨테이너화된 GPU 애플리케이션을 실행할 수 있는 독커(Docker) 등의 도구를 설치한다.

GPU를 준비하고 원하는 환경을 구성하는 긴 프로세스는 개발자에게 부담을 주는 경우가 많으며, 필요한 도구의 버전이 일치하지 않거나 오래된 버전으로 인해 오류가 발생할 수도 있다.

기업이 개발자에게 사전 구성된 턴키 방식의 인프라와 클라우드 기반 GPU 스택을 제공하면 개발자는 툴 다운로드 같은 번거로운 관리 작업과 절차를 수행할 필요가 없다. 궁극적으로 개발자는 솔루션 구축 및 테스트를 즉시 시작할 수 있으므로 고부가가치 작업에 집중하고 생산성을 극대화할 수 있다.

또한 클라우드 GPU 전략은 모든 사용 사례에 적합한 GPU를 배포할 수 있는 유연성을 제공한다. 이를 통해 기업은 특정 GPU 구매에 얽매이지 않고 비즈니스 요구 사항에 따라 GPU 활용도를 조정해 생산성과 효율성을 높일 수 있다.

또한 GPU가 얼마나 빠르게 발전하고 있는지를 고려할 때, 클라우드 GPU 서비스 업체와 파트너 관계를 맺으면 조직이 필요로 하는 곳 어디에서나 GPU 용량을 제공받을 수 있으며, 클라우드 서비스 업체는 고객이 항상 최고 성능의 GPU에 액세스할 수 있도록 GPU를 유지 및 업그레이드할 것이다. 클라우드 또는 하이브리드 배포 패러다임을 통해 데이터 과학팀은 GPU 및 관련 인프라를 유지 관리할 시간을 수익 창출형 활동에 집중하는 데 쓸 뿐만 아니라 곧 구식이 될 수 있는 하드웨어에 대한 투자를 피할 수 있다.

* Kevin Cochrane은 벌쳐(Vultr)의 최고 마케팅 책임자다. ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.