vllm bench latency — 지연 시간 벤치마크

vllm bench latency — 지연 시간 벤치마크

vllm bench latency는 단일 배치(batch) 요청에 대한 모델 지연 시간을 벤치마크하는 하위 명령입니다. 고정된 입력/출력 길이로 짧은 배치를 반복 실행하면서 평균·퍼센타일 지연 시간을 측정하므로, 모델의 순수 추론 속도를 빠르게 확인할 때 사용합니다.

출처: 문서

본문

JSON CLI 인자

JSON CLI 인자를 넘길 때, 아래 두 방식은 서로 동등합니다.

--json-arg '{"key1": "value1", "key2": {"key3": "value2"}}'
--json-arg.key1 value1 --json-arg.key2.key3 value2

리스트 요소는 + 기호로 각각 전달할 수 있습니다.

--json-arg '{"key4": ["value3", "value4", "value5"]}'
--json-arg.key4+ value3 --json-arg.key4+='value4,value5'

핵심 옵션

옵션 기본값 설명
--input-len 32 요청당 입력 토큰 수
--output-len 128 요청당 출력 토큰 수
--batch-size 8 한 배치의 요청 수
--n 1 프롬프트당 생성할 시퀀스 수
--use-beam-search False 빔 서치 사용 여부
--num-iters-warmup 10 워밍업(예열) 반복 횟수
--num-iters 30 실제 측정 반복 횟수
--profile False 단일 배치의 생성 과정 프로파일링
--output-json None 지연 시간 결과를 JSON으로 저장할 경로
--disable-detokenize False 디토크나이즈 생략(측정 시간에 제외)

기본 실행 예시는 다음과 같습니다.

vllm bench latency \
    --model meta-llama/Llama-3.2-1B-Instruct \
    --input-len 32 \
    --output-len 1 \
    --enforce-eager \
    --load-format dummy
  • --num-iters-warmup으로 GPU 캐시와 커널을 예열한 뒤, --num-iters만큼 반복하며 안정적인 지연 시간을 얻습니다.
  • --model 및 모델 실행기(runner) 계열 옵션은 ModelConfig 그룹에 속하며, --runnerauto/draft/generate/pooling 중에서 선택할 수 있습니다.
  • 전체 옵션 목록은 vllm bench latency --help로 확인할 수 있습니다.

더 알아보기 (Learn more)