1. 역사적 배경 : CPU 의 Memory Wall 재림
폰 노이만 구조의 병목 현상 Von Neumann Bottleneck 이 현재 GPU 와 AI 프레임 워크 사이에서 더 거대한 규모로 재현되고 있음
- 과거의 CPU : 연산 속도는 무어의 법칙에 따라 기하급수적으로 늘어났으나, DRAM 의 속도는 물리적 한계로 완만하게 성장, 이를 극복하기 위해 캐시 계층과 파이프라이닝이 도입되었음
- 현재의 GPU : 수천 개의 코어가 동시에 연산하는 GPU 시대가 되면서, 연산 능력 대비 메모리에서 데이터를 퍼 올리는 속도 Bandwidth 의 격차는 과거 CPU 시절보다 훨씬 심각해졌다.
2. 문제의 핵심 : 소프트웨어와 하드웨어의 미스매치
| 구분 | 과거의 AI 프레임워크 (Legacy) | 현대의 GPU 하드웨어 (Modern) |
| 설계 철학 | 연산 하나하나의 효율성 (Operator-wise) | 대규모 병렬 처리 및 대역폭 활용 |
| 데이터 처리 | 매 연산 후 메모리(VRAM) 쓰기/읽기 | 칩 내부(SRAM)에서의 데이터 재사용 필요 |
| 최적화 대상 | 산술 연산 횟수 감소 (Flops) | 메모리 접근 횟수 감소 (I/O) |
3. 주요 현상 : 연산보다 비싼 데이터 이동
현재의 AI 모델 실행 시 발생하는 Memory Traffic 현상은 다음과 같은 비효율을 초래한다.
- Memory-Bound State : GPU 코어는 연산을 빠르게 끝낼 수 있지만, 데이터를 가져오는데 더 9배 가까이 시간이 더 걸린다.
- Intermediate Storage Overhead : 딥러닝 프레임워크가 그래프의 유연성을 위해 중간 결과값을 매번 VRAM 에 저장하면서 불필요한 트래픽이 발생 ( Register Spill 현상이 거대한 VRAM 단위로 일어나는 것과 유사 )
4. AICF (AI Compiler) 의 해결 방향 : IR 설계의 전환
과거 컴파일러가 어떤 명령어를 실행할 것이간에 집중했다면, 현대의 AI 컴파일러는 데이터를 어떻게 메모리에 머물게 할 것인가를 IR 단계에서 결정해야 한다.
- Kernel Fusion ( 커널 퓨전 ) : 연산들을 하나로 묶어 중간 데이터를 VRAM 으로 내보내지 ㅇ낳고 레지스터나 Shared Memory 수준에서 소모하게 만든다.
- Tiling & Blocking : 데이터를 작은 조각으로 나누어 캐시 적중률을 극대화한다.
- Memory Planning : IR 수준에서 텐서의 생존주기를 분석하여 메모리를 정적으로 할당하고 재사용한다.
'AI Compiler framework' 카테고리의 다른 글
| Compute Property - 단일 개념 정의 (0) | 2026.03.19 |
|---|---|
| Memory Wall and the Illusion of Operators - Why Modern AI Compilers Must Become Dataflow System (0) | 2026.03.09 |
| [AICF Whitepaper] Operator are illusion : 하드웨어 가속의 물리적 실체 (0) | 2026.03.09 |
| Runtime Optimization in Deep Learning Frameworks and AI Compilers (0) | 2026.03.07 |
| Plan Compiler ( Execution Planner Compiler ) (0) | 2026.03.05 |