top of page

GPU 가상화를 위한 세 가기 방법 - DirectPath I/O, NVIDIA GRID, FlexDirect

최근 딥러닝, 머신 러닝 관련해 VM웨어 vSphere 환경에서 GPU 자원을 어떻게 공유할지에 대한 관심이 커지고 있습니다. 이에 가장 널리 쓰이는 3가지 방법을 간단히 정리해 보았습니다. 필요와 목적에 맞게 GPU 가상화를 하는 데 있어 도움이 되었으면 합니다. 방법을 살펴보기에 앞서 GPU 가상화를 왜 하려는 것인지 짚고 넘어가겠습니다. GPU 자원을 가상화하여 공유하려는 이유는 다음과 같습니다.

· 하드웨어 자원 최적화를 통해 불필요한 자원 낭비와 투자 최소화

· 효율적인 자원 공유로 딥러닝, 머신 러닝 워크로드 생산성 향상

· VM웨어 기반 가상화 환경에서 원활한 Data Science 작업 지원

본론으로 돌아와 GPU 가상화 방법 세 가지를 알아보겠습니다.


1. DirectPath I/O


이 기능은 VM웨어가 제공하는 것으로 VM에서 하이퍼바이저를 거치지 않고 물리적 하드웨어의 PCI에 직접 접근할 수 있도록 하는 것입니다. 이 모드를 이용하면 ESXi 호스트가 설치된 서버에 장착된 물리적인 GPU에 VM이 다이렉트로 접근할 수 있습니다. 참고로 VM은 1~4개의 GPU에 접근할 수 있습니다.



2. GRID


NVIDIA는 가상화 환경에서 그래픽, 엔지니어링 등의 워크로드를 지원하기 위해 GRID라는 GPU 가상화 기능을 지원해왔습니다. 최근 NVIDIA GIRD의 활용 범위는 그래픽, 엔지니어링을 넘어 딥러닝, 머신 러닝으로 확대되고 있습니다.



3. FlexDirect


최근 VM웨어가 인수한 비트퓨전 사가 제공하는 GPU 가상화 솔루션인 FlexDirect는 앞서 소개한 가상화보다 더 유연하고 규모가 큰 자원 통합을 지원합니다. 네, 호스트 단위의 가상화가 아니라 데이터센터 측면의 GPU 가상화와 자원 통합을 지원하는 유연성을 제공합니다.



우리 회사 Data Science, AI 팀에게 맞는 GPU 가상화 방법은?

위 세 가지 방법은 각각의 특징이 뚜렷합니다. 이 말은 딥러닝, 머신 러닝 모델링, 트레이닝, 인퍼러싱 관련해 각 회사와 조직의 특성에 맞는 방법을 골라야 한다는 것을 뜻합니다. 성능, 생산성 등 조직마다 수행하는 프로젝트 특징에 따라 우선순위가 다릅니다. 이를 고려해 우리 회사에 맞는 방법을 선택해야 한다는 소리죠. 관련해 VM웨어에서 이에 대한 선택 기준을 정리한 문서가 있어 이를 참조해 정리해 봤습니다.



그렇다면 세 가지 선택 기준에 맞는 방법은 어떤 것일까요? 조직 규모, 현재 진행 중인 프로젝트 수 등 여러 요인을 따져야겠지만 대략적으로 선택지를 정리해 보면 다음과 같습니다.



조회수 1,252회댓글 0개
bottom of page