InfiniBand란? AI 데이터센터가 일반 이더넷 대신 쓰는 이유

AI 데이터센터에서 GPU를 수백 개, 수천 개씩 연결한다는 이야기를 들으면 처음에는 단순하게 생각하기 쉽습니다.

빠른 GPU를 많이 설치하면 그만큼 AI 학습도 빨라질 것 같습니다.

하지만 실제로는 그렇지 않습니다.

GPU 하나의 계산이 끝난 뒤 다른 GPU가 계산한 결과를 기다려야 하는 상황이 계속 발생하기 때문입니다.

GPU 8개 정도를 한 서버 안에서 사용하는 것과 수백 대의 서버에 들어 있는 GPU를 하나의 AI 클러스터로 묶는 것은 전혀 다른 문제입니다.

서버가 늘어나면 결국 네트워크를 통해 데이터를 주고받아야 합니다.

이때 AI와 슈퍼컴퓨터 분야에서 자주 등장하는 기술이 InfiniBand(인피니밴드)입니다.

InfiniBand는 단순히 인터넷을 빠르게 연결하기 위해 만든 네트워크가 아닙니다.

서버와 저장장치 사이에서 많은 데이터를 낮은 지연시간으로 빠르게 주고받도록 설계된 Switched Fabric(스위치드 패브릭) 방식의 고성능 인터커넥트입니다.

InfiniBand Trade Association(IBTA)은 InfiniBand를 서버와 스토리지를 연결하기 위한 산업 표준 스위치드 패브릭 구조로 설명하고 있습니다.

1. 일반 인터넷과 AI 네트워크는 목적부터 다르다

회사나 가정에서 사용하는 Ethernet(이더넷)은 활용 범위가 매우 넓습니다.

인터넷에 연결하고 파일을 전송하고 서버와 PC를 연결하는 등 거의 모든 네트워크에 사용할 수 있습니다.

AI 데이터센터가 원하는 것은 조금 다릅니다.

예를 들어 GPU 1,000개가 하나의 AI 모델을 함께 학습한다고 해보겠습니다.

각 GPU는 자기에게 배정된 계산만 처리하는 것이 아닙니다.

중간 결과를 다른 GPU와 계속 교환해야 합니다.

그리고 이 작업은 학습이 진행되는 동안 계속 반복됩니다.

결국 네트워크는 단순히 파일을 보내는 통로가 아니라 AI 계산 과정의 일부가 됩니다.

이 차이를 이해하면 왜 AI 데이터센터에서 InfiniBand 같은 별도의 고성능 네트워크가 등장했는지 이해하기 쉬워집니다.

2. GPU가 계산을 끝내도 바로 다음 계산을 하지 못할 수 있다

AI Training(학습)에서는 하나의 모델을 여러 GPU가 나눠 계산하는 Distributed Training(분산 학습)을 많이 사용합니다.

각 GPU에서 계산한 결과는 일정한 시점마다 다시 합쳐져야 합니다.

예를 들어 GPU A가 계산을 끝냈더라도 GPU B와 C의 결과가 아직 도착하지 않았다면 다음 단계로 넘어가지 못할 수 있습니다.

이때 GPU는 아무 일을 하지 않고 기다립니다.

문제는 이런 GPU가 상당히 비싼 장비라는 것입니다.

GPU를 많이 설치해놓고 네트워크 때문에 계산을 쉬게 만든다면 데이터센터 전체 투자효율이 떨어집니다.

그래서 대규모 AI 시스템에서는 GPU 계산 속도만큼 GPU 사이의 통신시간을 줄이는 것도 중요합니다.

3. InfiniBand의 핵심은 단순한 최고속도가 아니다

InfiniBand를 보면 200Gb/s, 400Gb/s, 800Gb/s 같은 숫자가 먼저 눈에 들어옵니다.

현재 NVIDIA의 Quantum-X800 InfiniBand 플랫폼은 포트당 800Gb/s 연결을 제공하는 제품까지 나와 있습니다.

하지만 InfiniBand의 장점을 단순히 전송속도로만 설명하면 중요한 부분을 놓치게 됩니다.

AI 서버에서는 얼마나 많은 데이터를 보내느냐만큼 얼마나 빨리 전송을 시작하고, CPU 개입을 얼마나 줄이며, 혼잡이 발생했을 때 통신을 안정적으로 유지하는지도 중요합니다.

즉 대역폭과 Latency(지연시간), CPU 부담, 혼잡 제어를 같이 봐야 합니다.

4. RDMA가 중요한 이유

InfiniBand를 이해할 때 가장 중요한 용어 가운데 하나가 RDMA(Remote Direct Memory Access, 원격 직접 메모리 접근)입니다.

이름은 어렵지만 원리는 의외로 단순합니다.

일반적인 네트워크 통신에서는 데이터를 다른 서버로 보내기 위해 운영체제와 CPU를 거치는 과정이 필요합니다.

데이터가 여러 번 복사되기도 합니다.

RDMA는 이런 중간 과정을 줄이고 다른 서버의 메모리에 직접 데이터를 전달할 수 있도록 합니다.

InfiniBand는 서버 간 직접 메모리 접근을 기본적인 설계 요소로 가지고 있으며 운영체제를 우회하거나 메모리 복사를 줄이는 방식으로 통신 부담을 낮출 수 있습니다.

GPU 수가 적을 때는 작은 차이처럼 보일 수 있습니다.

하지만 GPU와 서버가 수백 대 이상으로 늘어나면 이런 차이가 누적됩니다.

5. CPU를 데이터 운반에 덜 사용하는 이유

AI 서버의 CPU도 해야 할 일이 많습니다.

데이터를 준비하고 프로그램을 관리하고 네트워크와 저장장치를 제어해야 합니다.

그런데 서버 사이의 데이터 복사까지 CPU가 계속 처리하면 CPU 자원을 추가로 사용하게 됩니다.

RDMA는 네트워크 어댑터가 데이터 이동을 직접 처리하도록 만들어 CPU 개입을 줄일 수 있습니다.

쉽게 말하면 택배가 올 때마다 회사 대표가 직접 물건을 받아 각 부서에 전달하는 대신, 물류 담당자가 필요한 장소까지 바로 배달해주는 것과 비슷합니다.

AI 클러스터 규모가 커질수록 이런 작업을 CPU에서 떼어내는 것이 중요해질 수 있습니다.

6. GPU 메모리에서 바로 다른 서버로 보낼 수도 있다

AI 데이터센터에서는 한 단계 더 나아갑니다.

GPUDirect RDMA 같은 기술을 이용하면 GPU와 네트워크 장치 사이에서 CPU 메모리를 반드시 거치지 않고 데이터를 주고받을 수 있습니다.

NVIDIA의 NCCL 문서에서도 GPUDirect RDMA를 사용할 경우 데이터를 네트워크 장치로 직접 전달해 CPU를 우회할 수 있다고 설명합니다.

기존 방식이

GPU → CPU 메모리 → 네트워크 → CPU 메모리 → GPU

처럼 움직였다면 상황에 따라 중간 단계를 줄일 수 있는 것입니다.

GPU가 많아질수록 이런 데이터 이동경로를 줄이는 것이 전체 성능에 영향을 줍니다.

7. AI 학습에서는 작은 지연도 계속 쌓인다

네트워크 지연이 한 번 발생하는 것만 보면 몇 마이크로초 정도의 차이는 별것 아닌 것처럼 느껴질 수 있습니다.

하지만 AI 학습에서는 이런 통신이 반복해서 일어납니다.

수많은 GPU가 계산 결과를 교환하고 다시 계산한 뒤 또 데이터를 교환합니다.

한 번의 지연은 작더라도 학습 과정 전체에서 반복되면 상당한 시간이 될 수 있습니다.

그래서 High Performance Computing(HPC, 고성능 컴퓨팅)과 AI에서는 네트워크 지연시간을 중요하게 봅니다.

인터넷 웹페이지를 열 때 사용하는 네트워크와 AI GPU 클러스터가 요구하는 네트워크의 성격이 다른 이유입니다.

8. All-Reduce가 네트워크를 많이 사용하는 이유

28번에서 잠깐 설명했던 All-Reduce(올리듀스)는 대규모 AI 학습에서 중요한 통신 작업입니다.

각 GPU가 계산한 값을 모은 뒤 결과를 다시 여러 GPU에 전달합니다.

GPU 수가 적으면 큰 문제가 되지 않을 수 있습니다.

하지만 GPU 수가 수백 개, 수천 개가 되면 교환해야 할 데이터량도 커집니다.

이런 Collective Communication(집단 통신)의 효율이 전체 학습시간에 영향을 줍니다.

그래서 AI 네트워크에서는 단순한 서버 간 파일 복사보다 여러 GPU가 동시에 데이터를 교환하는 작업을 얼마나 효율적으로 처리하는지가 중요합니다.

9. 네트워크 장비가 계산을 일부 도와주기도 한다

이 부분은 InfiniBand를 단순한 통신망과 다르게 보게 만드는 부분입니다.

최근의 고성능 InfiniBand 플랫폼에서는 네트워크 스위치가 데이터만 전달하는 것이 아니라 일부 집단통신 작업을 네트워크 안에서 처리할 수 있습니다.

NVIDIA는 이를 In-Network Computing(인네트워크 컴퓨팅)이라고 부르며, Quantum 계열에서 SHARP 기술을 이용해 집단통신 연산을 가속하고 있습니다.

쉽게 생각하면 여러 사람이 계산한 값을 본사에 전부 보내 본사에서 합산한 뒤 다시 내려보내는 대신 중간 지점에서 어느 정도 결과를 합쳐 보내는 방식과 비슷합니다.

이런 기능이 필요한 이유도 결국 GPU가 통신 때문에 기다리는 시간을 줄이기 위해서입니다.

10. InfiniBand가 패킷 손실에 민감한 AI에 적합한 이유

AI 분산 학습에서는 여러 서버가 매우 많은 데이터를 동시에 주고받습니다.

이 과정에서 패킷이 손실되고 다시 전송해야 한다면 지연시간이 커질 수 있습니다.

InfiniBand는 원래부터 고성능 컴퓨팅을 고려한 손실 없는 switched fabric 구조와 흐름 제어를 갖도록 설계됐습니다. NVIDIA의 InfiniBand 설계 설명에서도 lossless switched network와 cut-through switching을 주요 특징으로 설명합니다.

물론 실제 데이터센터에서도 네트워크 설계와 혼잡 관리는 필요합니다.

InfiniBand를 설치하기만 하면 모든 병목이 자동으로 사라지는 것은 아닙니다.

11. 그렇다면 일반 Ethernet은 AI에 사용할 수 없을까

그렇지는 않습니다.

이 부분은 InfiniBand를 설명할 때 꼭 구분할 필요가 있습니다.

최근 Ethernet도 상당히 발전했습니다.

특히 RoCE(RDMA over Converged Ethernet)는 Ethernet 네트워크에서도 RDMA를 사용할 수 있도록 만든 기술입니다.

Red Hat 문서에서도 RoCE를 Ethernet을 통해 RDMA를 사용하는 네트워크 프로토콜로 설명하고 있습니다.

즉 “RDMA는 InfiniBand에서만 가능하다”는 설명은 맞지 않습니다.

Ethernet에서도 적절한 하드웨어와 네트워크 구성을 갖추면 고성능 AI 네트워크를 만들 수 있습니다.

12. InfiniBand와 Ethernet의 차이는 어디에 있을까

일반적인 Ethernet의 가장 큰 장점은 이미 거대한 생태계가 있다는 점입니다.

기업 데이터센터에서 오랫동안 사용해왔기 때문에 장비 선택폭이 넓고 운영 경험도 많습니다.

기존 네트워크와 통합하기도 상대적으로 쉽습니다.

InfiniBand는 반대로 HPC와 대규모 병렬처리처럼 낮은 지연시간과 고성능 통신을 요구하는 환경에 초점을 맞춘 구조입니다.

그래서 대규모 GPU 클러스터를 처음부터 고성능 AI용으로 설계한다면 InfiniBand가 매력적인 선택이 될 수 있습니다.

반대로 기존 Ethernet 인프라를 활용해야 한다면 RoCE 기반 Ethernet이 더 현실적일 수 있습니다.

결국 둘 중 하나가 모든 상황에서 무조건 우수하다고 말하기는 어렵습니다.

13. Ethernet도 빠르다면 굳이 InfiniBand를 쓰는 이유

400Gbps Ethernet과 400Gbps InfiniBand가 있다고 해보겠습니다.

숫자만 보면 같은 속도입니다.

하지만 AI 클러스터에서는 최대 전송속도만 같다고 실제 성능이 똑같은 것은 아닙니다.

RDMA 처리, 지연시간, 혼잡 제어, 스위치 구조, 소프트웨어 최적화, GPU 통신 라이브러리 등이 함께 영향을 줍니다.

InfiniBand는 처음부터 HPC와 대규모 병렬 시스템에 사용되어온 만큼 이런 환경에 맞는 기능을 통합해 제공한다는 장점이 있습니다.

반대로 Ethernet은 범용성이 높고 기존 데이터센터와 결합하기 쉽다는 강점이 있습니다.

AI 데이터센터 운영자가 단순히 포트 속도만 비교해서 네트워크를 선택하면 안 되는 이유입니다.

14. InfiniBand의 단점도 분명하다

InfiniBand라고 장점만 있는 것은 아닙니다.

전용 스위치와 네트워크 어댑터, 케이블 등의 인프라가 필요합니다.

기존 Ethernet 중심 데이터센터에서는 새로운 운영 경험도 필요할 수 있습니다.

규모가 작은 AI 서버 몇 대를 운영하면서 대규모 InfiniBand 네트워크를 구축한다면 투자비용 대비 효과가 크지 않을 수도 있습니다.

특히 AI 추론 서버처럼 GPU 사이의 대량 통신이 많지 않은 환경이라면 고성능 InfiniBand가 항상 필요한 것은 아닙니다.

어떤 AI 작업을 하는지가 먼저입니다.

15. GPU 숫자가 많아질수록 네트워크 설계가 어려워진다

GPU 8개를 연결하는 것과 GPU 8,000개를 연결하는 것은 단순히 장비 수를 1,000배 늘리는 문제가 아닙니다.

서버가 늘어나면 스위치를 여러 단계로 구성해야 합니다.

특정 구간에 트래픽이 몰리지 않도록 경로도 설계해야 합니다.

케이블 수와 광모듈, 랙 배치, 전력과 냉각까지 함께 고려해야 합니다.

결국 AI 클러스터가 커질수록 네트워크는 하나의 별도 시스템이 됩니다.

고성능 GPU를 구입하는 것만큼 그 GPU들을 어떻게 연결할지가 중요해지는 것입니다.

16. 400Gb/s에서 800Gb/s로 올라가는 이유

기존 NVIDIA Quantum-2 InfiniBand는 포트당 최대 400Gb/s를 제공했습니다. 현재 Quantum-X800 플랫폼은 800Gb/s급으로 확대됐습니다.

네트워크가 두 배로 빨라지는 이유는 단순히 기술 경쟁 때문만은 아닙니다.

GPU 성능이 올라가고 GPU 한 대에서 처리하는 데이터량이 증가하면서 서버 간에 이동해야 할 데이터도 늘어나기 때문입니다.

AI 모델 규모 역시 계속 커지고 있습니다.

결국 GPU가 빨라질수록 GPU 사이를 연결하는 길도 넓어져야 합니다.

28번에서 살펴본 800Gbps AI 네트워크와 InfiniBand가 바로 연결되는 부분입니다.

17. AI 데이터센터에서 네트워크를 보는 방법

AI 데이터센터 기사를 볼 때 GPU 수량만 보면 전체 구조를 이해하기 어렵습니다.

GPU가 몇 개인지 확인한 뒤 그 GPU들이 어떤 방식으로 연결되어 있는지도 같이 보는 것이 좋습니다.

서버 안에서는 GPU끼리 어떤 인터커넥트를 사용하는지, 서버 밖에서는 InfiniBand인지 Ethernet인지, 네트워크 속도는 얼마인지 확인해보면 AI 시스템 구조가 조금 더 보입니다.

특히 대규모 학습 시스템에서는 네트워크가 GPU 성능을 얼마나 제대로 활용할 수 있게 해주는지가 중요합니다.

18. InfiniBand를 정리해보면

InfiniBand(인피니밴드)는 대규모 서버와 GPU를 낮은 지연시간과 높은 대역폭으로 연결하기 위한 고성능 네트워크 기술입니다.

하지만 “Ethernet보다 속도가 빠르기 때문에 사용하는 네트워크”라고만 이해하면 부족합니다.

RDMA를 이용해 CPU 개입과 데이터 복사를 줄이고, GPU 간 통신을 빠르게 처리하며, 대규모 병렬 연산에 맞는 네트워크 구조를 제공한다는 점이 중요합니다.

동시에 Ethernet 역시 RoCE를 이용해 RDMA를 지원하고 고성능 AI 네트워크 영역으로 발전하고 있습니다.

따라서 앞으로 AI 데이터센터가 모두 InfiniBand 하나로 통일된다고 보기보다는 시스템 규모와 기존 인프라, 비용, 운영방식에 따라 InfiniBand와 고성능 Ethernet이 함께 사용될 가능성이 큽니다.

AI 서버를 계속 공부하면서 느끼게 되는 것은 GPU 하나만 따로 봐서는 전체 성능을 이해하기 어렵다는 점입니다.

HBM이 GPU에 데이터를 공급하고, DDR과 SSD가 그 뒤를 받쳐주며, 서버가 여러 대가 되는 순간 네트워크가 이 모든 장비를 연결합니다.

네트워크가 충분히 빠르지 않으면 수백 개의 고성능 GPU를 설치하고도 GPU가 서로의 계산 결과를 기다리는 상황이 생길 수 있습니다.

결국 InfiniBand의 가치는 단순히 데이터를 빨리 보내는 데 있는 것이 아닙니다.

수많은 GPU가 가능한 한 서로 기다리지 않고 하나의 거대한 AI 컴퓨터처럼 움직이도록 만드는 데 있습니다.