TL;DR
FlashAttention은 LLM의 어텐션 연산 시 발생하는 거대한 스코어 행렬을 메모리에 저장하지 않고 계산하는 최적화 기법이다. GPU의 느린 HBM과 빠른 SRAM 사이의 데이터 이동 병목을 해결하기 위해 타일링과 온라인 소프트맥스 기법을 사용한다. 이를 통해 정확도를 유지하면서도 메모리 트래픽을 획기적으로 줄여 연산 속도를 높이고 긴 컨텍스트 처리를 가능하게 한다.
챕터별 상세
어텐션 행렬의 메모리 문제
GPU 메모리 구조와 병목
HBM은 High Bandwidth Memory의 약자로 GPU의 메인 메모리 역할을 한다.
표준 어텐션의 비효율성
타일링을 통한 최적화
온라인 소프트맥스 적용
결과 및 성능 향상
용어 해설
- 고대역폭 메모리(HBM)
- — GPU에 탑재된 대용량 메인 메모리이다. 용량은 크지만 SRAM에 비해 접근 속도가 느려 데이터 이동 시 병목 현상의 주원인이 된다.
- 정적 램(SRAM)
- — GPU 칩 내부에 위치한 초고속 메모리이다. 용량은 매우 작지만 HBM보다 수천 배 빠르게 접근할 수 있어 연산 효율을 높이는 데 사용된다.
- 타일링(Tiling)
- — 데이터를 작은 블록(타일) 단위로 나누어 처리하는 기법이다. 전체 데이터를 한 번에 메모리에 올리지 않고 필요한 부분만 SRAM에 로드하여 메모리 트래픽을 줄인다.
- 온라인 소프트맥스(Online Softmax)
- — 전체 행 데이터를 한꺼번에 보지 않고도 소프트맥스를 계산하는 방식이다. 실행 중인 최댓값과 합계를 갱신하며 데이터를 처리하여 메모리 저장 공간을 절약한다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.



