LLM 추론의 효율적 경계: 트레이드오프 관리 vs 전체 성능 향상
The efficient frontier of LLM inference

AI 업계에서 '효율적 경계(efficient frontier)'는 비용과 성능 간의 트레이드오프를 관리하는 개념으로 쓰입니다. 이 글은 LLM 추론 엔지니어링에서 이 개념을 적용하여, 배치 크기, 병렬화 전략, 양자화 같은 트레이드오프 관리 기법과 커널 최적화, 추측 디코딩, P/D 분리 같은 전체 성능을 향상시키는 기법을 구분해 설명합니다. 전자는 특정 지점을 목표로 하는 반면, 후자는 전체 경계를 확장하여 지연 시간과 처리량 모두를 개선할 수 있습니다.
오늘날의 LLM은 수천억 또는 수조 개의 파라미터를 가지며 여러 GPU에 분산되어야 합니다.
HN 토론
40- kgeist
저는 현재 llama.cpp의 장점(단일 바이너리 배포, 이기종 비데이터센터 컴퓨팅에 대한 우수한 지원, 광범위한 양자화 지원)과 vLLM/SGLang의 장점(더 나은 VRAM 활용을 위한 적절한 페이징 어텐션, 높은 동시성)을 결합한 추론 엔진을 작성하려고 노력하고 있습니다.
데이터센터 하드웨어는 비싸고 부족하지만, llama.cpp는 동시 사용에 느리고 최적화되지 않았으며, vLLM/SGLang은 일반적이지 않은 설정(예: RTX5090+RTX4090에 파이프라인 병렬 처리를 사용하는 경우 RAM 캐싱을 활성화하면 무작위로 충돌하거나 모든 랭크가 동일한 장치 유형이라고 가정하기 때문에 잘못된 커널을 선택할 수 있습니다. 또한 Q5-Q6을 지원하지 않습니다.)에서 쉽게 충돌합니다.
저에게 가장 흥미로운 점은 좋은 데이터센터 하드웨어가 없을 때 추론을 최적화하는 방법과 그것을 가장 잘 최적화하는 방법입니다. 저는 사무실에서 AI 서버를 운영해 왔으며, 지금까지 저렴한 하드웨어에서 동시 사용에 가장 중요한 기술은 다음과 같다는 것을 알게 되었습니다: 파이프라인 병렬 처리(PCIe를 수용하기 위해), RAM 캐싱(컨텍스트를 VRAM으로 빠르게 복원하기 위해), 추측 디코딩(도메인별 n-그램 포함, 드래프트 모델의 오버헤드 없이 코드 생성을 상당히 가속화할 수 있음), 특정 장치에 고도로 최적화된 좋은 커널, Q5-Q6 지원(Q8과 거의 동일), FP8 컨텍스트(더 많은 컨텍스트를 맞추기 위해), 페이징 어텐션(더 나은 VRAM 활용을 위해), 프리픽스 캐싱, 연속 배칭(이것은 모든 곳에서 기본값입니다).
지금까지 주요 [...]
- jumploops
> 추측 디코딩은 모델이 생성할 수 있는 토큰을 추측한 다음 해당 추측을 검증하는 프로세스입니다.
컴퓨터 엔지니어로서 스택의 다양한 수준에서 적용되는 최적화를 보는 것은 항상 흥미롭습니다.
추측 실행은 90년대에 꽤 대중화되었고, 결국 사실상 모든 x86 설계에서 사용되었습니다.
그런 다음 2000년대 중반에 Speculator[0] 논문이 그 개념을 분산 시스템으로 가져왔고, 우리는 여전히 그에 대한 작업을 보고 있습니다[1][2].
모든 오래된 것이 다시 새로워지고 있습니다 (:
[0]https://www.cs.princeton.edu/courses/archive/fall07/cos518/p...
[1]https://www.usenix.org/system/files/osdi25-shen-weihai.pdf
[2] https://www.microsoft.com/en-us/research/publication/distrib...
- amelius
매개변수를 변경할 때 효율적 경계선에 머무르고 있다는 것을 어떻게 확신할 수 있습니까?
이 프레젠테이션은 경계선에 관한 것보다는 어떤 손잡이를 돌릴 수 있고 결과가 어떤 방향으로 움직일지(경쟁사보다 나빠질 수 있음)에 대해 더 많이 말하는 것 같습니다.
- armcat
곧 Astra가 사용하는 '재귀 깊이' 전략을 포함할 수 있을 것 같습니다. 이는 (제 생각에) 전통적으로 생각/CoT에서 사용되어 온 전체 순방향 패스 + 샘플링 대신 트랜스포머의 재귀적 내부 상태 변경을 사용하는 것입니다. 유사한 방법이 여기에서 사용되었습니다(하지만 다른 맥락 - 빠른 실행을 위해 트랜스포머 가중치 내부에 도구를 인코딩): https://www.percepta.ai/blog/can-llms-be-computers
- copperwire
양자화와 추측 디코딩은 우리의 소규모 모델에서 상당한 비용 절감을 실현했습니다. 여전히 이상적인 비용/성능 비율을 추구하고 있습니다.