728x90
반응형
1. FLOPs와 FLOPS 차이
- FLOPS (FLoating Point Operations Per Second)
- 성능 단위: 하드웨어가 1초 동안 처리할 수 있는 부동 소수점 연산 횟수
- 예: GPU 스펙 시 “19 TFLOPS” → 초당 19조 번의 연산 가능
- FLOPs (FLoating Point Operations)
- 연산량 단위: 특정 모델(혹은 연산)을 실행할 때 필요한 총 부동 소수점 연산 횟수
- 모델 복잡도를 추정하는 지표
즉, FLOPS는 하드웨어 성능, FLOPs는 알고리즘/모델의 연산량을 의미합니다.
Floating Point 간단 정리
컴퓨터는 실수(real number)를 정확히 다루지 못합니다. 대신 부동 소수점(Floating Point이라는 근사 방식을 씁니다.

- 왜 "부동"?
- 소수점 위치가 “고정(fixed)”이 아니라 지수(exponent)에 따라 “떠다니며” 결정됨.
- 덕분에 아주 작은 값(10^-38)부터 아주 큰 값(10^38)까지 넓은 범위를 표현할 수 있음.
- 장점
- 고정 소수점 방식보다 훨씬 넓은 범위 표현 가능.
- 단점
- 근사값이라서 오차 발생 (대표적으로 IEEE 754 표준).
그래서 딥러닝에서 “연산량”을 얘기할 때 FLOPs = “부동 소수점 연산 횟수”를 의미합니다.
2. 왜 FLOPs가 중요한가?
- 효율성(Efficiency) 비교 지표
- 같은 정확도를 내는 모델이라도 FLOPs가 적다면 더 빠르고 에너지 효율적일 가능성이 높음.
- 모바일/엣지 환경에서 경량화 모델을 비교할 때 특히 중요.
- 모델 설계 의사결정
- 예를 들어 LLaMA, GPT 같은 LLM을 설계할 때, 파라미터 수와 FLOPs는 곧 학습 비용과 직결됩니다.
- FLOPs가 큰 모델은 더 많은 GPU, 더 긴 학습 시간, 더 많은 전력을 소모.
- 스케일링 법칙(Scaling Laws)
- Kaplan et al. (2020)의 스케일링 법칙에 따르면, 모델 성능은 파라미터 수, 데이터 크기, 연산량(FLOPs)에 따라 예측 가능.
- 따라서 FLOPs는 모델 학습 계획을 세우는 데 필수적인 기준.
FLOPs 예시
- Dot product
- Y = w[0] * x[0] + w[1] * x[1] + w[2] * x[2]
- 곱셈 3번, 더하기 2번 → 5 FLOPs → (2n - 1) FLOPs
- Dense layer (fully-connected layer)
- Bias는 없다고 가정
- W1 행렬:
- 3-dimensional vector → 4-dimensional vector
- h1 = w1 * x → (4, 1) = (4, 3) * (3, 1)
- Dot product (n=3)을 4번 수행 → 5 * 4 = 20FLOPs
- 곱셈 12번, 더하기 8번



4. FLOPs vs. 다른 지표
- Parameters: 모델 크기(저장 공간, 메모리 차지)
- FLOPs: 실행 시 연산량(시간, 전력과 직결)
- Latency: 실제 응답 시간 (하드웨어, 최적화에 따라 FLOPs와 달라질 수 있음)
- Throughput: 초당 처리 가능한 토큰/샘플 수
즉, FLOPs는 “모델 복잡도의 이론적 척도”이고, 실제 체감 속도는 하드웨어·최적화 상태까지 고려해야 함.
5. 요약
- FLOPS = 초당 연산 성능 (하드웨어)
- FLOPs = 총 연산량 (모델/알고리즘)
- FLOPs는 모델 효율성을 비교하는 데 중요한 지표.
- LLM에서는 특히 Self-Attention의 FLOPs = O(n²d)가 병목.
- 효율적인 모델(예: Sparse Attention, Linear Attention)은 FLOPs를 줄여 더 긴 컨텍스트 처리를 가능하게 함.
마무리
딥러닝과 LLM 연구에서 FLOPs는 단순히 숫자가 아니라 “모델 효율성을 가늠하는 잣대”입니다.
같은 성능을 내더라도 연산량이 적은 모델은 더 빠르고, 전력 소모도 줄일 수 있으며, 특히 대규모 학습이나 추론에서 큰 차이를 만들어냅니다.
앞으로는 모델의 효과성(effectiveness)뿐 아니라 효율성(efficiency)을 동시에 고려하는 것이 필수입니다.
Self-Attention의 O(n²d) 병목을 해결하려는 연구들—Sparse Attention, Linear Attention, FlashAttention—도 모두 이 문제의 연장선에 있습니다.
결국 FLOPs를 이해하고 비교하는 것은 단순한 계산을 넘어서,
“어떤 모델을 언제, 어떤 자원에서 학습·서비스할 것인가?”라는 전략적 판단을 가능하게 합니다.
읽어주셔서 감사합니다.
728x90
반응형
'AI > LLM' 카테고리의 다른 글
| ✋ RAG·Agent 글은 잠시 쉬어가고, 이제는 LLM 그 자체를 탐구하려 합니다 (0) | 2025.12.02 |
|---|---|
| GLU vs SwiGLU: LLM에서 왜 SwiGLU가 더 주목받는가? (0) | 2025.09.19 |