DeepSeek 이해하기(기술적인 측면들) > 멤버뉴스

본문 바로가기

멤버뉴스

DeepSeek 이해하기(기술적인 측면들)

이미지가 없습니다.
우선 이 글은 제가 다 쓴 것은 아니고 딥식이랑 클로드의 도움이 있었습니다.
(딥식은 웹검색, 분석, 개요작성, 개념설명을 맡고 클로드는 좀 더 쉬운 내용으로 해설을 추가해줬습니다.)
그러니까 그냥 질문 넣어 좌르륵 나오는 걸 복붙한 내용까지는 아니고 그래도 제가 몇번 왔다갔다 해서 만든 내용 정도가 되겠네요.

저는 딥시크 이슈의 핵심을 기술적으로 좀 더 이해하고 싶었습니다. 그걸 모르고서는 "굉장히 비용효율적인 LLM이 나왔다"라고만 그저 받아들어야될 뿐이어서 답답하더라구요. 언론에 나오는 온갖 성능 수치나 기술 용어에 대해서 왜 그것들이 놀라운 건지(왜 놀라야 되는지) 이유라도 좀 알고 가야 그나마 나을 것 같았습니다. 그래서 조금 살펴본 결과 결국은 이번 이슈는 "최적화"라는 단어로 요약이 될 수 있을 것 같습니다.

아래와 같은 [[팻 겔싱어(Pat Gelsinger) 전 인텔 CEO의 DeepSeek에 대한 세 가지 발언]]을 정리하면

1. 컴퓨팅의 가스 법칙 : "컴퓨팅은 가스 법칙을 따른다. 극적으로 비용을 낮추면 시장이 확장될 것이다"
2. 제약 속 혁신 : "중국 엔지니어들은 제한된 자원을 가지고 있었고, 창의적인 해결책을 찾아야 했다"
3. 개방성의 승리 : "오픈이 승리한다(Open Wins). DeepSeek은 점점 더 폐쇄적이 되어가는 AI 기초 모델 개발 세계를 재설정하는 데 도움이 될 것"

그래서 이 중에서 두번째가 특히 와닿게 됩니다. 창의적인 혁신을 통해 기술적 최적화를 어떻게 달성하였는가를 가능한 선에서 속을 들여다 보고 그나마 찍먹이라도 해보자는 생각에서 정리해 보았습니다. AI문체를 감안하고 읽어 주세요.
------------------------

DeepSeek 기술의 혁신성

DeepSeek이 개발한 AI 모델 최적화 기술은 현대 인공지능 발전에 있어 중요한 전환점을 제시합니다. 이 문서에서는 각각의 혁신적 기술을 상세히 살펴보고, 그 의미와 영향을 심층적으로 분석합니다.

1. PTX를 통한 저수준 최적화: GPU 연산의 새로운 지평

기술의 본질적 의미
PTX(Parallel Thread Execution)는 NVIDIA GPU의 어셈블리 언어입니다. 이는 마치 컴퓨터와 직접 대화할 수 있는 가장 기초적인 언어와 같습니다. CUDA가 일반적인 프로그래밍 언어라면, PTX는 하드웨어를 직접 제어할 수 있는 더 근본적인 도구입니다.

기술적 특성과 구현
PTX는 CUDA 코드가 GPU에서 실행되기 전 중간 단계로 변환되는 저수준 언어입니다. 개발자가 직접 하드웨어 명령어를 제어할 수 있다는 점이 핵심입니다. DeepSeek은 이를 활용하여 다음과 같은 혁신을 이루었습니다:

- 전방/후방 미니배치 처리 시 통신 단계를 계산 단계와 병행하여 GPU 유휴 시간을 최소화했습니다. 이는 마치 공장에서 한 생산라인이 쉬는 시간 없이 지속적으로 가동되는 것과 같은 효과를 냅니다.
- H800 GPU의 132개 스트리밍 멀티프로세서(SM) 활용. 20개의 SM을 통신 스케줄링 및 데이터 압축/해제 전용으로 할당. 이는 132명의 작업자 중 20명을 데이터 처리와 전달을 위한 전담 인력으로 배치하는 것과 유사한 전략입니다.

달성된 효과

CUDA 컴파일러의 자동 생성 코드 대비 10배 이상의 훈련 효율성 달성. 2048개의 H800 GPU로 671B 매개변수 모델을 2개월 만에 훈련 완료. 이는 Meta의 Llama 3.1과 비교했을 때 GPU 시간이 1/11 수준으로 단축된 놀라운 성과입니다.

2. FP8 혼합 정밀도 훈련: 혁신적인 메모리 최적화


기술의 기본 원리
FP8(8비트 부동소수점)은 숫자를 더 작은 비트로 표현하는 방식입니다. 이는 마치 소수점 여섯 자리를 두 자리로 줄이는 것과 비슷한 개념입니다. 정밀도는 다소 떨어질 수 있지만, 메모리 사용량과 처리 속도에서 큰 이점을 얻을 수 있습니다.

기술적 특성
FP8은 FP16 대비 다음과 같은 장점을 제공합니다:
- 메모리 사용량 50% 절감
- 계산 속도 2배 향상
그러나 과거에는 훈련 불안정성 문제로 대규모 모델 적용이 어려웠습니다. DeepSeek은 E4M3(e4m3) 포맷을 도입하여 이 문제를 해결했습니다.

최적화 전략의 세부 내용
- Tile-wise 양자화 : 데이터 블록 단위로 동적 범위를 조정하여 오류 누적을 방지합니다.
*양자화(Quantization)는 고정밀도 데이터(예: FP32)를 저정밀도 데이터(예: FP8)로 변환하여 메모리 사용량과 계산 속도를 개선하는 기술입니다. Tile-wise 양자화는 데이터를 작은 블록으로 나누어 각 블록마다 독립적으로 양자화를 적용함으로써, 전체 데이터의 동적 범위를 고려하지 않고도 정확도를 유지할 수 있습니다.
-CUDA 코어 활용 : FP8 계산 후 중간 결과를 CUDA 코어의 벡터 유닛에서 고정밀도로 재계산해 정확도를 보정합니다.
* CUDA 코어는 NVIDIA GPU의 기본 계산 유닛으로, 벡터 유닛은 여러 데이터를 동시에 처리할 수 있는 병렬 처리 기능을 제공합니다. DeepSeek은 FP8 계산의 중간 결과를 CUDA 코어의 벡터 유닛에서 고정밀도로 재계산하여 정확도를 보정함으로써, FP8의 낮은 정밀도로 인한 오차를 최소화했습니다.

달성된 효과

-전체 훈련 비용 557.6만 달러 (GPT-4 대비 약 1/20)
-수치 안정성 유지 (훈련 손실 오차 <0.25%)

3. DualPipe 파이프라인 알고리즘: 획기적인 처리 효율화

기술의 혁신성
DualPipe는 계산과 통신이라는 두 가지 핵심 작업을 완벽하게 병렬화한 시스템입니다. 이는 마치 식당에서 주방장이 요리하는 동안 서빙 직원이 동시에 음식을 전달하는 것과 같은 효율적인 시스템입니다.

설계 원리
- 이중 파이프라인 : 계산(전방/후방 전파)과 통신(그래디언트 동기화)을 독립적인 파이프라인으로 분리하여 병행 처리
이중 파이프라인은 두 개의 독립적인 작업 흐름을 동시에 실행함으로써, 한 작업이 대기 상태일 때 다른 작업이 진행되도록 하여 전체 처리 속도를 높이는 방식입니다.

- 동적 버퍼 관리 : NVLink/InfiniBand 대역폭을 100% 활용하기 위해 데이터 청크를 미리 분할. 노드당 최대 4개 노드와만 통신하도록 제한하여 효율성 극대화

달성된 효과
- 파이프라인 버블(bubble) 50% 감소
- 통신 오버헤드 20% 절감
- 파이프라인 버블은 파이프라인 처리에서 한 단계가 완료되기를 기다리는 동안 발생하는 유휴 시간을 의미하며, 이를 줄이면 전체 처리 속도가 향상됩니다.
- 14.8조 토큰 프리트레이닝 시 거의 제로에 가까운 통신 지연 달성

4. MoE(전문가 혼합) 아키텍처: 지능적 부하 분산

기존 MoE의 한계. 전통적인 MoE 시스템의 주요 문제점
- 보조 손실(auxiliary loss)을 사용한 부하 분산은 모델 성능 저하를 초래했습니다.
- MoE는 여러 전문가 모델을 조합하여 입력에 따라 적절한 전문가를 선택하는 방식으로, 전통적으로는 보조 손실을 통해 전문가 간의 부하를 분산시키지만, 이는 모델의 성능을 저하시키는 원인이 됩니다.
* 보조 손실(Auxiliary Loss)은 모델의 주 목적 외에 추가적인 손실 함수를 도입하여 특정 목표(예: 전문가 간 부하 분산)를 달성하는 기술입니다. 그러나 이는 모델의 주 목적과 충돌할 수 있어 성능 저하를 초래할 수 있습니다.

DeepSeek의 혁신적 해결책 : 역사적 사용 빈도 기반 편향 조정
- 과부하 전문가의 선택 확률을 동적으로 감소
- 사용률이 낮은 전문가의 확률을 증가시켜 자연스러운 균형 달성
* 역사적 사용 빈도 기반 편향 조정은 각 전문가의 과거 사용 빈도를 기반으로 선택 확률을 조정하는 방식으로, 특정 전문가에 대한 과도한 의존을 방지하고 부하를 균등하게 분산시킵니다.

달성된 효과
- 훈련 안정성 향상 (손실 급등/롤백 없음)
- 전문가 병렬 처리 시 계산 효율성 30% 개선

5. 초대형 배치 처리: 데이터 효율성의 극대화

배치 크기의 혁신적 확장
기존 4M~8M 토큰 배치에서 60M 토큰(4K 시퀀스 × 15,360 샘플)으로 확장
배치 크기는 한 번의 훈련 반복에서 처리되는 데이터 샘플의 수를 의미하며, 배치 크기가 클수록 데이터 병렬 처리 효율성이 높아집니다.

효율성 극대화 전략
데이터 병렬 처리(DP) 최적화 : 2048 GPU를 16개 파이프라인 그룹으로 분할. 각 그룹당 120개 샘플 처리 가능
* 120개의 샘플 처리가 가능하다는 결론은 2048개의 GPU를 16개의 파이프라인 그룹으로 나누면 각 그룹당 128개의 GPU가 할당되고, 이 중 8개의 GPU를 통신 및 동기화에 사용하여 실제 계산에 사용되는 GPU는 120개가 됨을 의미합니다.

다중 토큰 예측(MTP) 도입 : 단일 토큰 예측 대비 2~3% 성능 향상. 추론 시 다중 토큰 생성으로 속도 개선
* 다중 토큰 예측은 한 번에 여러 토큰을 예측하여 모델의 학습 효율성을 높이는 기술입니다.



정리 / CUDA와 PTX의 발전 과정 재조명: DeepSeek 사례의 의미


CUDA의 한계점
- 고수준 추상화로 인한 유연성 부족
- 통신-계산 오버랩의 세밀한 스케줄링 불가
- CUDA는 개발자가 쉽게 GPU 프로그래밍을 할 수 있도록 고수준의 추상화를 제공하지만, 이로 인해 하드웨어를 세밀하게 제어하는 데 한계가 있습니다.

PTX의 잠재력과 활용
- 커스텀 SASS 코드 생성 : H800 GPU의 SM을 가상 DPU(Data Processing Unit)로 재구성하여 통신 가속
* SASS(Streaming Assembly)는 NVIDIA GPU의 실제 기계어로, PTX를 통해 생성된 코드가 최종적으로 SASS로 변환되어 실행됩니다.
* SM(Streaming Multiprocessor)은 NVIDIA GPU의 기본 처리 유닛으로, 여러 CUDA 코어를 포함하고 있으며 병렬 처리를 담당합니다. DeepSeek은 H800 GPU의 SM을 가상 DPU로 재구성하여 통신 가속을 달성했습니다.

- NVIDIA GPU의 숨겨진 기능 활용 : PTX를 통해 FP8 누적 연산의 정밀도 문제를 CUDA 코어와의 협업으로 보완. 이는 하드웨어의 숨겨진 잠재력을 최대한 끌어낸 혁신적인 접근입니다.



결론 / 시사점

산업계에 미치는 영향 : 소프트웨어 최적화의 중요성
DeepSeek의 사례는 하드웨어 제약 환경에서도 소프트웨어 최적화를 통해 놀라운 성과를 달성할 수 있음을 보여줍니다. 이는 AI 개발에서 하드웨어 성능만이 아닌, 최적화 기술이 핵심 경쟁력이 될 수 있음을 시사합니다. AI 개발 기업들의 최적화 기술 확보 경쟁 가속화가 예상됩니다. 
기술 제재의 한계
H800(성능 제한 버전)으로도 최첨단 모델 훈련이 가능했다는 사실은 의미심장합니다. 이는 하드웨어 제재만으로는 AI 기술 발전을 제한하기 어렵다는 것을 보여줍니다.

최적화 기술의 중요성
순수 연산력 확보보다 최적화 기술의 심화가 핵심 경쟁력으로 부상. 이는 향후 AI 개발에서 효율성 혁신이 핵심 축이 될 것임을 시사

향후 기술 발전 방향하드웨어 성능 향상에만 의존하지 않는 균형 잡힌 발전 필요
소프트웨어 최적화 기술의 지속적인 혁신

(사족)결국 미국 AI기업의 전문가라는 집단, 이누마들은 연봉 수십만달러를 받아먹으면서 말랑한 CUDA로만 개발을 줄창 하였다는 것인지, 그 반면에 더 빡세고 까다로운 PTX로 한땀한땀 테스트 해가면서 개발한 딥시크 개발자에게서는 헝그리 정신과 예술혼이 느껴질 지경이네요. 
(사족2)쓰고 나서 다시 읽어보니 조금 어렵긴하네요. 하하핫... 처음에 글 제목을 문과를 위한 딥시크 이해하기로 달았다가 민망해서 그 부분 지워버렸습니다.
추천84 비추천 45
관련글
  • [열람중]DeepSeek 이해하기(기술적인 측면들)
  • 실시간 핫 잇슈
  • 당분간 skt 이용자는 각종 인증 문자서비스 이용을 하지 않으시는게 좋겠습니다.
  • 겉으로 밝아보이는 사람이 가장 슬픈 이유
  • ??? : 케빈 가넷 그거 미네소타서 컨파 한번 간 범부 아니냐?
  • 닭비디아 주가
  • 강스포) 데블스플랜2 다 본 짤막한 후기
  • 지상렬 "예쁘다고 왜 말을 안해?"
  • 광무제를 낳은 용릉후 가문 (7) - 미완의 꿈, 제무왕 유연 (6)
  • 유나이티드 헬스그룹의 행보가 매우 심상치 않습니다
  • 10개 구단 2루수 수비 이닝 비중
  • 지옥의 9연전 성적 결산
  • 회사소개 개인정보처리방침 서비스이용약관

    Copyright © www.webstoryboard.com All rights reserved.