AI와 GPU 서버
안녕하세요 B2B IT 인프라 플랫폼 퓨처링입니다.
왜 GPU 서버가 기업용으로 인기를 얻게 되었을까요? GPU 서버 구하기가 하늘의 별따기보다 어려운 현실이라고 합니다.
그런데 잠깐, GPU를 보고 먼저 고성능 게임이나 코인 채굴을 떠올리셨다면? 이 게시글에 주목해 주세요.
GPU가 뭐야?
GPU가 대체 무엇일까요? GPU는 Graphic Processing Unit의 약자로, 모니터처럼 화면에 그림을 그려주는 장치로 생각하면 이해하기 쉬울 것입니다.
화면에 그림을 그려주기 위해서는 수많은 부동소수점 연산(소수점이 있는 두 개의 숫자 간 곱셈)을 계산해야 합니다.
이 계산은 CPU도 가능하나, 효율성을 높이기 위해 단순 연산처리를 목적하는 GPU가 탄생했습니다.
그래픽카드랑 GPU랑 달라?
GPU(Graphic Processing Unit)는 그래픽카드 요소 중 하나입니다. 그래픽카드는 GPU 칩 외에 연산에 필요한 데이터를 임시로 담아두는 램(VRAM),
메인보드와 연결해주는 기판, 그리고 모니터와 연결해주는 HDMI 포트까지 화면 출력에 대한 부품들로 구성된 장치입니다.
반면에 GPU는 모니터에 출력하기 위해 데이터를 빠르게 연산하는 기능을 가진 그래픽카드의 핵심 부품을 지칭합니다.
물론, GPU가 없으면 모니터에 출력할 수 없으며, GPU만으로 화면에 출력하는 것은 불가능합니다. CPU만으로 컴퓨터를 사용할 수는 없는 것처럼요.
단, GPU가 성능을 좌우하는 핵심 부품이다 보니 그래픽카드의 명칭을 지칭할 때 GPU의 모델명을 지칭하는 경우가 많습니다.
엔비디아 사의 Geforce RTX 4070과 같은 이름도 그래픽카드의 명칭이라기보다는 GPU의 모델명에 가깝죠.
그럼 GPU와 CPU는 뭐가 달라?
먼저, GPU가 어떤 방식을 가진 부품인지 알 필요가 있습니다.
CPU의 경우, 여러 가지의 복잡한 연산들을 빠르고 효율적으로 처리하기 위해 복잡한
구조로 만들어져 있습니다. 그래서 다양한 환경 및 복잡한 소프트웨어의 요구사항들을
모두 처리할 수 있죠. 단, *태스크를 *쓰레드당 하나씩 처리하기 때문에 작업이 방대하게
있다면 먼저 들어온 작업들이 마무리되어야 다음 작업을 할 수 있습니다. 그래서 코어 수와
쓰레드가 많을수록 여러 가지 일을 한꺼번에 처리할 수 있습니다.
반면, GPU의 경우 단순한 연산들을 빠르고 효율적으로 처리하기 위해 병렬구조로
되어있습니다. 그래서 그래픽을 처리하기 위한 수많은 연산에만 집중합니다. 그러나 AI를
비롯한 다양한 응용 프로그램이 등장함에 따라 점점 더 범용 병렬 프로세서로 진화를
거듭하고 있습니다.
*태스크 : 운영체제에서 본 처리의 실행 단위
*쓰레드 : 운영체제에서 태스크의 실행 단위
초창기 GPU 모델 GeForce 256
GPU는 어떻게 탄생한거야?
초창기 그래픽 처리는 CPU에서 담당했습니다. 하지만 3D를 구현하는 데 있어 복잡한
연산과정이 문제였죠. 그 가운데 1999년 엔비디아에서 초창기 GPU 모델인 GeForce
256을 선보였습니다. 이는 GPU라는 그래픽 가속 부품이 그래픽 처리의 핵심 요소가 되는 시발점이었습니다.
하지만 CPU처럼 복잡한 연산은 못 하고 그래픽 처리에 특화된
연산만 집중적으로 할 수 있었죠.
GPU의 발전 - GPGPU
이렇게 성능이 발전하게 된 GPU는 이제 그래픽 처리뿐만 아니라 CPU의 연산을 도울수도 있게 되었습니다.
바로 GPGPU(General-Purpose computing on GPU)라는 기술을 통해서 말이죠.
GPGPU라는 기술은 CPU가 담당하는 연산 일부를 GPU에서 할 수 있도록 제공한
기능이었습니다. 이로 인해 GPU도 CPU 도우미 정도의 능력을 발휘할 수 있게 된 것이죠.
(코어 하나의 성능은 CPU가 월등히 뛰어납니다.)
이 GPGPU로 인해 새로운 시대가 열리기 시작하였습니다. 엔비디아는 자체 GPGPU
기술인 CUDA(Compute Unified Device Architecture)를 발표하였고, ATI (지금의
AMD)는 Stream Processor를 발표했습니다. 이는 모두 GPGPU에 기반한 기술입니다.
왜 AI에 GPU를 쓰지?
예를 들어 현재 1개의 CPU는 약 64코어 정도가 최대 코어 수를 가지고 있다 하면,
1개의 GPU는 몇천 개의 코어를 가지고 있습니다. 이는 위에서 말했던 연산 처리를 병렬로
한꺼번에 처리할 수 있다는 뜻입니다.
AI 최적화(딥러닝 등)는 같은 계산 방식을 수천 번 수만 번 이상 계속 반복해야 하는 작업이
많습니다. 왜냐하면, 같은 작업을 반복할수록 좀 더 정확한 결과를 얻어낼 수 있기
때문이죠.
수많은 코어 수를 이용해 단순한 연산처리를 한꺼번에 대량으로 병렬처리를 할 수 있는
GPU가 인공지능 최적화에 최고의 적임자가 된 것입니다.
와, 그럼 GPU만 있으면 AI 할 수 있네?
그렇지는 않습니다. 위에서 말했듯 CPU의 보조기능을 하는 GPU는 CPU를 통해 계산에
관한 내용을 전달받아 처리한 후 다시 CPU로 넘겨주는 작업을 합니다. 그러므로 CPU에
대한 여유도 있어야 하며, 동시에 GPU에 대한 부하도 견딜 수 있어야 합니다. 결국,
연산에 대한 명령과 결과를 수집하는 관리자 역할은 CPU가 담당하고 있는 것이죠.
거리가 멀수록 손실이 커지는 현재의 반도체/전자 기술에서는, 이를 해결하고자 CPU 옆에
GPU를 붙여 성능을 올리려는 시도도 많이 하고 있습니다.
A100
H100
기업용 GPU는 뭐가 달라?
엔비디아사의 경우, 일반용 제품인 GeForce와 기업용 제품인 데이터센터 GPU (원래
브랜드는 테슬라였지만, 현재는 Datacenter GPU라고 별도로 불리고 있습니다.)로
구분을 하고 있습니다.
가장 큰 차이라고 하면, GPU가 그래픽카드를 통해 모니터에 출력하는 기능을 갖추기는
하였지만, 기업용 GPU는 GPGPU 기능을 강화해 디스플레이 기능을 낮추고 병렬 연산의
능력을 극대화한 것이라고 할 수 있습니다. 성능을 최대치로 끌어올려 AI의 계산에
최적화되도록 만든 것이죠.
현재 가장 유명한 기업용 GPU로는 엔비디아 사의 A100과 H100이 있습니다.
그럼, GeForce로는 AI를 할 수 없을까?
현재 출시되는 모든 그래픽카드에는 기본적으로 AI 개발을 할 수 있는 GPGPU를
지원하는 기능들이 탑재되어 있습니다. 이는 실제 서비스가 필요하거나 거대 데이터의
딥러닝을 필요로 하는 목적이 아니라면 비용을 줄이기 위해 개발이나 연구 목적으로 RTX
시리즈를 많이 사용하기도 합니다. A100이나 H100이 너무 비싸고 구하기도 힘들어진
시점에서, 저렴한 비용으로 연구나 개발을 진행해야 한다면 GeForce RTX와 같은
그래픽카드를 선택하는 것도 합리적인 선택일 수 있습니다.
이런 목적에서 상대적으로 저렴한 RTX와 같은 그래픽카드를 사용할 때, 그래픽카드를
장착하려는 서버에 장착 가능한 그래픽카드의 모델, 최대 수 등 중요 요소를 꼭 확인해야
합니다. 왜냐하면, 서버마다 장착할 수 있는 그래픽카드의 수가 정해져 있고, CPU의
개수마다도 다르므로 GPU 서버를 구매할 때는 전문가와 상담을 하는 것이 중요합니다.
GPU 서버를 구매하려면?
GPU와 최적의 궁합을 가진 서버를 구매하려면 현재 퓨처링에서 진행하고 있는 기획전을
참고해 보시면 도움이 되실 것 같습니다. 또한, 퓨처링에서 GPU 서버를 구매하면 자신이
구매한 제품과 부품을 확인할 수 있고, 문제가 발생하면 구매처의 연락처를 확인할 필요
없이 퓨처링 내에서 원클릭으로 기술지원을 신청할 수 있습니다. GPU 서버를 구매해야
한다면 지금 바로 기획전을 둘러보고 상담을 요청해 보세요!
지금 GPU 서버 기획전 구경 하러가기
김에디터
B2B IT 제품 커머스 플랫폼 - 퓨처링