오늘은 얼마전 Deepseek AI가 개발 및 공개한 3FS에 대한 이야기를 해보려한다.
클라우드 교육을 듣던 도중 강사님께서 3FS에 대해 NFS와 비교해보는 과제를 주셨는데, 자료를 찾아보다 보니 흥미가 더 생겨 글로 정리해보게 되었다. 3FS가 무엇인지, 왜 만들게 되었는지 등에 대한 나의 생각을 정리할 것이다. 발표된지 얼마 되지 않은 시스템이기에 자료가 많이 없어서 대부분 스스로 생각하고 추론한 내용이라는 점을 고려하면 좋을 것 같다.
✅ NFS와 3FS
현대 사회는 초거대 데이터를 중심으로 움직이고 있다. 매일 생성되는 데이터는 기하급수적으로 증가하고 있고, 이를 기반으로 인공지능(AI)을 학습시키려는 수요도 폭발적으로 늘어나고 있는 추세이다. GPT-4와 같은 대형 AI 모델은 수천억 개의 파라미터와 수 페타바이트(PB)에 달하는 데이터를 학습하며 만들어지고 있으며, 이러한 AI 학습을 뒷받침하기 위해서는 이전과는 차원이 다른 고성능 파일 시스템이 요구된다.
하지만 기존의 파일 시스템인 NFS(Network File System)는 이러한 요구를 감당하기 어려운 구조를 가지고 있다. NFS는 하나의 파일 서버에 여러 클라이언트가 접근하는 중앙집중형 구조를 기반으로 하며, 서버 한 대가 모든 입출력 요청을 처리해야 하기 때문에 병목(bottleneck)이 쉽게 발생하고, 확장성도 제한적이라는 단점을 가지고 있다. 특히 AI 학습처럼 대량의 데이터를 수천 개의 GPU가 동시에 읽고 써야 하는 환경에서는, 처리 성능과 지연 시간 측면에서 큰 한계를 드러내기도 한다. 실제 진행했던 실습 중에도 top 명령어나 iotop을 통해 관찰한 I/O wait 증가 현상을 통해, 이런 병목이 성능 저하로 직결되는 것을 확인할 수 있었다.
이러한 문제를 해결하기 위해 등장한 것이 바로 DeepSeek에서 개발한 3FS(Fire-Flyer File System)입니다. DeepSeek는 중국을 기반으로 한 AI 연구 기업으로, 자체적으로 초거대 언어 모델을 개발·학습하기 위해 수천 개의 GPU를 활용해야 하는 상황이었다. 그러나 최근 미국은 NVIDIA A100, H100 등 고성능 GPU를 중국에 수출하지 못하도록 제한하고 있으며, 이는 중국 AI 기업에게 큰 장애 요인으로 여겨졌다. DeepSeek는 이러한 환경 속에서 단일 대형 서버나 고가의 상용 시스템에 의존하지 않고도 수천 개의 저비용 GPU를 연결해 AI를 병렬 학습할 수 있는 새로운 인프라가 필요했고, 그 해답으로 자체 고속 병렬 파일 시스템인 3FS를 직접 설계하게 된 것으로 예상한다.
3FS는 단순히 기존 스토리지의 성능을 개선한 것이 아니라, AI 학습에 최적화된 인프라 아키텍처로 스토리지와 컴퓨팅 자원을 분리한 Disaggregated 구조를 기반으로 하며, 데이터를 여러 스토리지 노드에 나누어 저장하고 클라이언트는 이 조각들을 병렬로 읽고 쓸 수 있도록 설계되었다고 한다. 이 구조는 기본적으로 병렬성을 내장하고 있어, 기존 NFS 구조에서 나타나는 병목 문제를 근본적으로 해결할 수 있도록 되어있다. 실제로 3FS는 최대 6.6TiB/s 이상의 읽기 성능을 기록할 수 있으며, 무상태 메타데이터 서비스, RDMA(Remote Direct Memory Access) 등의 기술을 활용해 지연 시간을 획기적으로 감소시켰다.
또한 많은 사람들이 오해하기 쉬운 부분이 있는데, 3FS와 같은 병렬 시스템에서는 여러 GPU가 같은 데이터를 중복 학습하지 않는니다. 처음 3FS의 개념을 들었을때, AI를 학습할 때 사용한다고 하여 그럼 각각의 GPU가 똑같은 데이터를 학습하는 것으로 이해했다. 그래서 똑같은 데이터를 각각의 GPU가 학습하는게 왜 학습에 도움이 되는것인가에 대한 의문을 가졌고, 데이터 학습에 도움이 되기 위해서는 하나의 데이터셋을 빠르게 학습하는 것이 중요한데 왜 똑같은 데이터를 학습하도록 하는지 이해가 되지 않았었다. 하지만 다시 살펴보니 똑같은 데이터셋을 학습하는 것이 아니라 거대한 하나의 데이터셋을 여러개로 나눠 각각의 GPU에 배정하고 학습된 결과를 추후 합치는 과정으로 진행되는 것이었다. 예를 들면, 전체 데이터셋 A를 A-1, A-2, A-3처럼 나눠서 각 GPU가 서로 다른 일부만 학습하고, 학습한 결과(gradient)를 정기적으로 공유 및 통합하여 하나의 일관된 모델을 만드는 방식(Data Parallelism)을 사용하는 것이다. GPU 간 통신을 통한 동기화는 AllReduce, NCCL 등과 같은 기술로 처리되며, 각 노드는 독립적으로 처리하되 결과는 공유함으로써 효율적이면서도 통합된 학습이 가능해진다.
이러한 구조와 기술 덕분에 3FS는 다양한 AI 인프라에서 실제로 활용되고 있습니다. 대표적인 사용 사례는 다음과 같이 알려져있다. 예시들 아래의 출처 글을 확인해보면 더욱 자세한 내용을 알 수 있을 것이다.
1️⃣ 대규모 AI 모델 학습 인프라
- DeepSeek의 자체 AI 훈련 클러스터 ‘Fire-Flyer 2’에서는 3FS를 기반으로 180개의 스토리지 노드와 10,000개의 Nvidia A100 GPU를 통해 대형 AI 모델을 학습하고 있으며, 최대 6.6TiB/s의 읽기 처리량을 달성했습니다.
→ Tom's Hardware - DeepSeek brings disruption to AI-optimized parallel file systems
2️⃣ AI 추론 속도 최적화
- 자주 사용하는 데이터를 고속으로 캐싱할 수 있는 KVCache 기능을 통해, 3FS는 실시간 AI 추론(NLP, 컴퓨터 비전 등)에서도 높은 응답성과 효율성을 제공합니다.
→ Medium - DeepSeek AI Unveils Fire-Flyer File System (3FS)
3️⃣ 초고속 대규모 데이터 정렬
- GraySort 벤치마크에서 110.5TiB의 데이터를 30분 만에 정렬하는 성능을 기록하며, 기존 분산 파일 시스템을 압도하는 수준의 처리 성능을 입증했습니다.
→ Analytics Vidhya - DeepSeek Releases 3FS & Smallpond Framework
이처럼 3FS는 단순한 기술적 혁신이 아니라, 글로벌 기술 패권 속에서 독립적인 AI 생태계를 구축하려는 전략의 일환으로도 볼 수 있을 것 같다. 미국이 고성능 GPU와 같은 핵심 자원의 수출을 제한함에 따라, 중국의 AI 기업들은 자체 기술력으로 이 제한을 극복하려는 방향으로 움직이고 있으며, 3FS가 그에 대한 상징적인 결과물로 나왔다고 생각한다. 기존 파일 시스템으로는 더 이상 대응할 수 없는 AI 환경의 요구에 맞춰, DeepSeek는 자사의 기술적 한계를 극복하기 위한 선택이 아닌 필수로써 3FS를 개발한 것이라고 생각된다. 3FS로 인해 앞으로 AI 관련 산업이 얼마나 발전할지 기대가되는 동시에 조금 무서운 느낌이 드는 것도 사실인 것 같다.
본 후기는 [카카오엔터프라이즈x스나이퍼팩토리] 카카오클라우드로 배우는 AIaaS 마스터 클래스 (B-log) 리뷰로 작성 되었습니다.
'클라우드(Cloud)' 카테고리의 다른 글
[스나이퍼팩토리] 카카오클라우드 AIaaS 마스터 클래스 6주차 - HTML & CSS와 웹 접근성 및 웹 표준 (0) | 2025.05.07 |
---|---|
[스나이퍼팩토리] 카카오클라우드 AIaaS 마스터 클래스 5주차 - HTML(HyperText Markup Language) (0) | 2025.05.07 |
[스나이퍼팩토리] 카카오클라우드 AIaaS 마스터 클래스 4주차 - 리눅스(Linux) 시그널_Signal (0) | 2025.04.29 |
[스나이퍼팩토리] 카카오클라우드 AIaaS 마스터 클래스 4주차 - 리눅스(Linux) 권한_Permissions (0) | 2025.04.22 |
[스나이퍼팩토리] 카카오클라우드 AIaaS 마스터 클래스 4주차 - 리눅스(Linux) 개념 및 명령어 정리 (0) | 2025.04.19 |