Speculative Decoding은 왜 빠른가? 더 많은 계산을 하면서도 빨라지는 이유
Why Is Speculative Decoding Fast?

Speculative Decoding이 빠른 이유는 작업량이 줄어서가 아니라 GPU가 하는 일의 종류가 바뀌기 때문이다. 작은 draft 모델로 여러 토큰을 제안하고 큰 모델이 한 번에 검증하면, 토큰당 메모리 바운드였던 디코딩이 배치 디코딩처럼 컴퓨트 바운드로 전환된다. 작은 배치 크기에서는 남는 컴퓨트를 활용해 속도를 높이지만, 배치가 최적 크기를 넘으면 오히려 컴퓨트를 낭비한다. vLLM의 --speculative-disable-by-batch-size 옵션이나 dSpark 같은 동적 추론 깊이 연구가 이 지점에서 나온다.
Speculative Decoding의 반직관적인 점 중 하나는 실제로 더 많은 작업을 한다는 것이다! 동일한 시퀀스에 대해 실행되는 총 부동소수점 연산(FLOPs) 수는 오히려 증가한다.