피드로 돌아가기
GML5 IndexCache
Dev.toDev.to
AI/ML

IndexCache 도입을 통한 DSA 인덱서의 O(NL²) 연산 병목 제거

GML5 IndexCache

Mahendra Gurjar2026년 6월 30일12advanced

Context

DeepSeek Sparse Attention(DSA)은 O(L²) Attention을 O(Lk)로 최적화했으나, 모든 레이어에서 개별적으로 작동하는 Lightning Indexer로 인해 다시 O(NL²)의 연산 비용이 발생하는 구조적 한계 직면.

Technical Solution

  • 인접 레이어 간 Top-k 토큰 선택 집합의 높은 중복성(70~100% overlap)을 활용한 IndexCache 아키텍처 설계
  • 전체 레이어를 독립적으로 인덱싱을 수행하는 Full(F) 레이어와 이전 F 레이어의 캐시를 재사용하는 Shared(S) 레이어로 분리
  • MLA(Multi-head Latent Attention)의 저차원 잠재 벡터를 활용하여 인덱서의 연산 부하를 최소화한 상태에서 캐싱 전략 적용
  • 단순 주기적 배치(Uniform) 방식의 성능 저하를 방지하기 위해 LM-loss 기반의 Greedy Search를 통한 최적 F/S 패턴 식별
  • Local Geometric Similarity의 한계를 극복하고 전역적인 오류 전파를 반영하기 위해 End-to-End 신호 기반의 레이어 선정 로직 채택
  • 별도의 GPU 메모리 추가 할당 없이 임시 버퍼를 통한 T_cache 교체 방식으로 메모리 오버헤드 제로화 달성

- 레이어 간 출력 유사도가 높더라도 하위 레이어로의 오류 전파(Error Propagation)가 발생하는 경우 local metric 대신 global loss 기반의 최적화 전략 검토 - 계산 복잡도가 높은 모듈이 반복될 때, 입력 데이터의 변화량과 출력 결과의 상관관계를 분석하여 캐싱 및 재사용 구간 설정 - 모델 구조 변경 없이 라우팅 결정(if/else branch)만으로 성능을 개선하는 비침습적 최적화 패턴 적용 고려

원문 읽기