NVLink
개요
NVLink는 엔비디아(NVIDIA)가 개발한 고속 스케일러블 프로세서 간 인터커넥트 기술로, 주로 GPU와 GPU 간, 또는 GPU와 CPU 간의 고대역폭·저지연 데이터 전송을 위해 설계되었습니다. 기존의 PCIe(Peripheral Component Interconnect Express) 인터페이스에 비해 훨씬 높은 대역폭과 효율성을 제공하며, 초고성능 컴퓨팅(HPC), 인공지능(AI), 대규모 딥러닝 훈련 및 과학 시뮬레이션과 같은 데이터 집약적 작업에 최적화되어 있습니다.
NVLink는 GPU 간의 메모리 공간을 더 긴밀하게 통합할 수 있는 가능성을 열어주며, 멀티-GPU 시스템에서의 성능 병목 현상을 크게 완화합니다. 이 기술은 엔비디아의 고성능 GPU 아키텍처인 볼타(Volta), 튜링(Turing), 앰페어(Ampere), 헥사(Hopper) 및 최신 블랙웰(Blackwell) 시리즈에서 채택되고 있습니다.
기술적 배경
PCIe의 한계
기존의 멀티-GPU 시스템은 주로 PCIe 인터페이스를 통해 GPU 간 통신을 수행했습니다. 그러나 PCIe 4.0 기준으로도 x16 슬롯에서 최대 약 32 GB/s의 양방향 대역폭을 제공하는 데 그치며, AI 및 HPC 워크로드의 급격한 데이터 요구량 증가로 인해 점점 더 큰 병목 현상이 발생하게 되었습니다.
NVLink는 이러한 병목을 해결하기 위해 설계되었으며, 최신 버전에서는 단일 링크당 수십 GB/s의 대역폭을 제공하고, 다수의 링크를 병렬로 결합하여 테라바이트 수준의 통신 대역폭을 실현합니다.
NVLink의 주요 특징
1. 고대역폭
NVLink는 GPU 간 직접 연결을 통해 매우 높은 대역폭을 제공합니다. 예를 들어:
- NVLink 1.0 (볼타 기반): 최대 20 GB/s (단방향), 40 GB/s (양방향) per link
- NVLink 2.0 (튜링/A100): 최대 25 GB/s per link → 양방향 50 GB/s
- NVLink 3.0 (H100): 최대 50 GB/s per link → 양방향 100 GB/s
- NVLink 4.0 (B200, GB200): 최대 100 GB/s per link
하나의 GPU는 최대 12개의 NVLink 링크를 지원할 수 있으며, 이를 통해 수 테라바이트(TB/s) 수준의 총 대역폭을 달성할 수 있습니다.
2. 저지연 통신
NVLink는 물리적 거리 단축과 전용 프로토콜을 통해 PCIe 대비 지연 시간을 크게 감소시킵니다. 이는 멀티-GPU 간 데이터 동기화, AllReduce 연산, 또는 분산 텐서 연산에서 매우 중요한 요소입니다.
3. GPU 메모리 공간 통합 (NVLink + NVSwitch)
엔비디아는 NVSwitch라는 전용 스위치 칩을 도입하여, 여러 GPU를 하나의 네트워크 토폴로지로 연결함으로써 모든 GPU가 다른 GPU의 메모리에 직접 접근할 수 있도록 합니다. 이 구조를 통해 Unified Memory Space를 구현하며, 개발자는 더 이상 데이터 복사를 수동으로 관리할 필요 없이, 마치 하나의 대형 GPU처럼 시스템을 활용할 수 있습니다.
예: NVIDIA DGX 시스템 (DGX A100, DGX H100)은 8개의 GPU를 NVLink와 NVSwitch로 완전 연결하여 최대 640 GB의 통합 GPU 메모리 공간을 제공합니다.
4. 스케일아웃 지원
NVLink는 단일 서버 내의 GPU 연결뿐 아니라, 멀티노드 클러스터 환경에서도 활용됩니다. 예를 들어, NVIDIA Quantum-2 InfiniBand와 결합된 NVLink Switching System은 서버 간 NVLink 연결을 가능하게 하여, 수천 개의 GPU를 초저지연으로 연결할 수 있습니다. 이는 대규모 AI 모델 훈련(예: GPT, Llama 등)에 필수적인 인프라입니다.
NVLink의 적용 사례
1. AI 및 딥러닝 훈련
대규모 언어 모델(LLM) 훈련 시, 수십 조(Trillion)의 파라미터를 처리해야 하며, GPU 간 데이터 교환 빈도가 매우 높습니다. NVLink는 이러한 환경에서 AllReduce, Pipeline Parallelism, Tensor Parallelism 등의 병렬화 전략을 효율적으로 수행할 수 있도록 지원합니다.
2. 과학 시뮬레이션
기후 모델링, 유체역학(CFD), 분자 동역학 시뮬레이션 등은 대량의 데이터를 실시간으로 공유해야 하며, NVLink는 이러한 HPC 워크로드에서 성능을 극대화합니다.
3. 데이터센터 및 슈퍼컴퓨터
- NVIDIA DGX 시리즈: 엔비디아의 AI 슈퍼컴퓨팅 플랫폼으로, NVLink 기반의 고성능 GPU 클러스터를 제공.
- Frontier, LUMI, Perlmutter 등의 세계적 슈퍼컴퓨터는 NVLink를 활용해 GPU 간 통신 성능을 극대화.
NVLink와 PCIe 비교
| 항목 |
NVLink |
PCIe 5.0 (x16) |
| 양방향 대역폭 |
최대 100 GB/s (per link, H100 기준) |
약 64 GB/s (전체 링크) |
| 지연 시간 |
매우 낮음 (~1~2μs) |
상대적으로 높음 (~3~5μs) |
| 연결 방식 |
점대점 또는 NVSwitch 기반 메쉬 |
계층형 스위치 구조 |
| 메모리 접근 |
Unified Memory 가능 (NVSwitch 필요) |
별도 메모리 공간, 복사 필요 |
| 확장성 |
멀티노드 NVLink 지원 |
제한적 |
관련 기술 및 생태계
- NVSwitch: 다수의 NVLink를 중계하여 모든 GPU가 완전 연결(Fully Connected)된 토폴로지 구성.
- CUDA: NVLink는 CUDA 프로그래밍 모델과 완벽하게 통합되어, 개발자가 특별한 수정 없이도 고성능 멀티-GPU 코드를 작성 가능.
- GPUDirect: NVLink와 연동되어, GPU와 네트워크 카드(NIC), 스토리지 장치 간 직접 데이터 전송을 가능하게 함.
참고 자료
- NVIDIA NVLink 공식 문서
- NVIDIA A100/H100 제품 사양 문서
- "NVIDIA Hopper Architecture Whitepaper" (2022)
- "Accelerating AI with NVLink and NVSwitch", NVIDIA GTC 세션 발표 자료
관련 문서
본 문서는 엔비디아의 공개 자료 및 기술 문서를 기반으로 작성되었으며, 2024년 기준 최신 정보를 반영하고 있습니다.
# NVLink
## 개요
**NVLink**는 엔비디아(NVIDIA)가 개발한 고속 스케일러블 프로세서 간 인터커넥트 기술로, 주로 GPU와 GPU 간, 또는 GPU와 CPU 간의 고대역폭·저지연 데이터 전송을 위해 설계되었습니다. 기존의 PCIe(Peripheral Component Interconnect Express) 인터페이스에 비해 훨씬 높은 대역폭과 효율성을 제공하며, 초고성능 컴퓨팅(HPC), 인공지능(AI), 대규모 딥러닝 훈련 및 과학 시뮬레이션과 같은 데이터 집약적 작업에 최적화되어 있습니다.
NVLink는 GPU 간의 메모리 공간을 더 긴밀하게 통합할 수 있는 가능성을 열어주며, 멀티-GPU 시스템에서의 성능 병목 현상을 크게 완화합니다. 이 기술은 엔비디아의 고성능 GPU 아키텍처인 **볼타(Volta)**, **튜링(Turing)**, **앰페어(Ampere)**, **헥사(Hopper)** 및 최신 **블랙웰**(Blackwell) 시리즈에서 채택되고 있습니다.
---
## 기술적 배경
### PCIe의 한계
기존의 멀티-GPU 시스템은 주로 PCIe 인터페이스를 통해 GPU 간 통신을 수행했습니다. 그러나 PCIe 4.0 기준으로도 x16 슬롯에서 최대 약 32 GB/s의 양방향 대역폭을 제공하는 데 그치며, AI 및 HPC 워크로드의 급격한 데이터 요구량 증가로 인해 점점 더 큰 병목 현상이 발생하게 되었습니다.
NVLink는 이러한 병목을 해결하기 위해 설계되었으며, 최신 버전에서는 단일 링크당 수십 GB/s의 대역폭을 제공하고, 다수의 링크를 병렬로 결합하여 테라바이트 수준의 통신 대역폭을 실현합니다.
---
## NVLink의 주요 특징
### 1. 고대역폭
NVLink는 GPU 간 직접 연결을 통해 매우 높은 대역폭을 제공합니다. 예를 들어:
- **NVLink 1.0** (볼타 기반): 최대 20 GB/s (단방향), 40 GB/s (양방향) per link
- **NVLink 2.0** (튜링/A100): 최대 25 GB/s per link → 양방향 50 GB/s
- **NVLink 3.0** (H100): 최대 50 GB/s per link → 양방향 100 GB/s
- **NVLink 4.0** (B200, GB200): 최대 100 GB/s per link
하나의 GPU는 최대 12개의 NVLink 링크를 지원할 수 있으며, 이를 통해 **수 테라바이트(TB/s)** 수준의 총 대역폭을 달성할 수 있습니다.
### 2. 저지연 통신
NVLink는 물리적 거리 단축과 전용 프로토콜을 통해 PCIe 대비 **지연 시간을 크게 감소**시킵니다. 이는 멀티-GPU 간 데이터 동기화, AllReduce 연산, 또는 분산 텐서 연산에서 매우 중요한 요소입니다.
### 3. GPU 메모리 공간 통합 (NVLink + NVSwitch)
엔비디아는 **NVSwitch**라는 전용 스위치 칩을 도입하여, 여러 GPU를 하나의 네트워크 토폴로지로 연결함으로써 모든 GPU가 다른 GPU의 메모리에 직접 접근할 수 있도록 합니다. 이 구조를 통해 **Unified Memory Space**를 구현하며, 개발자는 더 이상 데이터 복사를 수동으로 관리할 필요 없이, 마치 하나의 대형 GPU처럼 시스템을 활용할 수 있습니다.
예: NVIDIA DGX 시스템 (DGX A100, DGX H100)은 8개의 GPU를 NVLink와 NVSwitch로 완전 연결하여 최대 640 GB의 통합 GPU 메모리 공간을 제공합니다.
### 4. 스케일아웃 지원
NVLink는 단일 서버 내의 GPU 연결뿐 아니라, **멀티노드 클러스터 환경**에서도 활용됩니다. 예를 들어, **NVIDIA Quantum-2 InfiniBand**와 결합된 **NVLink Switching System**은 서버 간 NVLink 연결을 가능하게 하여, 수천 개의 GPU를 초저지연으로 연결할 수 있습니다. 이는 대규모 AI 모델 훈련(예: GPT, Llama 등)에 필수적인 인프라입니다.
---
## NVLink의 적용 사례
### 1. AI 및 딥러닝 훈련
대규모 언어 모델(LLM) 훈련 시, 수십 조(Trillion)의 파라미터를 처리해야 하며, GPU 간 데이터 교환 빈도가 매우 높습니다. NVLink는 이러한 환경에서 **AllReduce**, **Pipeline Parallelism**, **Tensor Parallelism** 등의 병렬화 전략을 효율적으로 수행할 수 있도록 지원합니다.
### 2. 과학 시뮬레이션
기후 모델링, 유체역학(CFD), 분자 동역학 시뮬레이션 등은 대량의 데이터를 실시간으로 공유해야 하며, NVLink는 이러한 HPC 워크로드에서 성능을 극대화합니다.
### 3. 데이터센터 및 슈퍼컴퓨터
- **NVIDIA DGX 시리즈**: 엔비디아의 AI 슈퍼컴퓨팅 플랫폼으로, NVLink 기반의 고성능 GPU 클러스터를 제공.
- **Frontier**, **LUMI**, **Perlmutter** 등의 세계적 슈퍼컴퓨터는 NVLink를 활용해 GPU 간 통신 성능을 극대화.
---
## NVLink와 PCIe 비교
| 항목 | NVLink | PCIe 5.0 (x16) |
|------|--------|----------------|
| 양방향 대역폭 | 최대 100 GB/s (per link, H100 기준) | 약 64 GB/s (전체 링크) |
| 지연 시간 | 매우 낮음 (~1~2μs) | 상대적으로 높음 (~3~5μs) |
| 연결 방식 | 점대점 또는 NVSwitch 기반 메쉬 | 계층형 스위치 구조 |
| 메모리 접근 | Unified Memory 가능 (NVSwitch 필요) | 별도 메모리 공간, 복사 필요 |
| 확장성 | 멀티노드 NVLink 지원 | 제한적 |
---
## 관련 기술 및 생태계
- **NVSwitch**: 다수의 NVLink를 중계하여 모든 GPU가 완전 연결(Fully Connected)된 토폴로지 구성.
- **CUDA**: NVLink는 CUDA 프로그래밍 모델과 완벽하게 통합되어, 개발자가 특별한 수정 없이도 고성능 멀티-GPU 코드를 작성 가능.
- **GPUDirect**: NVLink와 연동되어, GPU와 네트워크 카드(NIC), 스토리지 장치 간 직접 데이터 전송을 가능하게 함.
---
## 참고 자료
- [NVIDIA NVLink 공식 문서](https://www.nvidia.com/en-us/data-center/nvlink/)
- NVIDIA A100/H100 제품 사양 문서
- "NVIDIA Hopper Architecture Whitepaper" (2022)
- "Accelerating AI with NVLink and NVSwitch", NVIDIA GTC 세션 발표 자료
---
## 관련 문서
- [PCIe](https://en.wikipedia.org/wiki/PCI_Express)
- [CUDA](https://en.wikipedia.org/wiki/CUDA)
- [NVSwitch](https://www.nvidia.com/en-us/data-center/nvswitch/)
- [GPUDirect](https://developer.nvidia.com/gpudirect)
> 본 문서는 엔비디아의 공개 자료 및 기술 문서를 기반으로 작성되었으며, 2024년 기준 최신 정보를 반영하고 있습니다.