TL;DR
현대 대규모 언어 모델은 모든 토큰에 Attention을 적용해 시퀀스 길이에 따른 계산량이 제곱으로 증가하며, Sparse Attention은 중요한 토큰만 선택해 계산과 메모리를 줄입니다. SAS는 정적·동적 희소 패턴을 논리 연산자와 선언적 함수로 조합하게 하고, 기하학 기반 패턴 판별로 최소 KV cache 크기와 관리 함수를 자동 생성합니다. Nvidia GPU에서 FlexAttention보다 context encoding은 1.10-1.22배, token generation은 2.68-2.80배 빨랐습니다. AWS Trainium에서는 최적화된 dense attention보다 각각 1.41-6.49배와 1.39-10.87배 높은 속도를 기록했습니다.
빠른 이해
새로운 점
정적·동적 Sparse Attention 조합과 KV cache 최적화를 하나의 자동 커널 합성 시스템으로 처리합니다.
핵심 메커니즘
사용자가 논리 연산자와 선언적 함수로 정적·동적 Sparse Attention 패턴을 조합하면, SAS의 기하학 기반 패턴 판별기가 필요한 캐시 범위와 최소 KV cache 크기를 계산하고 캐시 관리 함수를 생성합니다. 이후 Nvidia GPU 또는 AWS Trainium용 희소 Attention 커널을 자동 합성해 context encoding과 token generation을 실행합니다.
핵심 수치
- GPU context encoding 속도: FlexAttention 대비 1.10-1.22×- Nvidia GPU
- GPU token generation 속도: FlexAttention 대비 2.68-2.80×- Nvidia GPU
- Trainium context encoding 속도: 최적화된 dense attention 대비 1.41-6.49×- AWS Trainium
- Trainium token generation 속도: 최적화된 dense attention 대비 1.39-10.87×- AWS Trainium
섹션별 상세
SAS의 희소 Attention 커널 합성
용어 해설
- 희소 Attention(Sparse Attention)
- — 전체 토큰 쌍을 계산하는 대신 중요한 토큰만 선택해 Attention을 수행하는 방식입니다. 처리 대상과 메모리 사용량을 줄여 긴 시퀀스의 추론 효율을 높이지만, 정적·동적 패턴 결합과 KV cache 관리가 복잡해지는 문제가 있습니다.
- 제곱计算 복잡도(Quadratic Computational Complexity)
- — 시퀀스 길이가 늘어날 때 Attention 계산량이 길이의 제곱에 비례해 증가하는 특성입니다. 토큰 수가 2배가 되면 관련 계산 규모가 4배로 커지므로, 대규모 언어 모델의 확장성을 제한하는 요인이 됩니다.
- KV Cache
- — 생성 과정에서 이미 계산한 Key와 Value를 저장해 이전 토큰의 Attention 계산을 반복하지 않도록 하는 메모리 구조입니다. 필요한 캐시만 유지하면 메모리 사용량을 줄일 수 있지만, 희소 패턴에 맞는 크기와 관리 함수가 필요합니다.
- 커널 합성(Kernel Synthesis)
- — 고수준의 연산 패턴을 GPU나 가속기에서 실행할 저수준 커널 코드로 자동 변환하는 과정입니다. SAS는 정적·동적 희소 Attention 패턴을 조합한 선언적 입력을 성능 중심의 실행 커널로 바꿉니다.
기술
- SAS
- Sparse Attention
- FlexAttention
- Nvidia GPU
- AWS Trainium
- KV cache
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
