vllm bench sweep serve_workload — 워크로드 스윕
vllm bench sweep serve_workload — 워크로드 스윕
vllm bench sweep serve_workload는 워크로드 변수(request_rate 또는 max_concurrency)를 단계적으로 조절하며 서빙 벤치마크를 반복 실행하는 하위 명령입니다. 부하가 커질 때 처리량과 지연 시간이 어떻게 변하는지 곡선을 얻는 데 특화되어 있습니다.
출처: 문서
본문
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'
핵심 옵션
| 옵션 | 기본값 | 설명 |
|---|---|---|
--serve-cmd |
None |
서버 실행 명령(vllm serve ...) |
--bench-cmd |
None |
벤치마크 실행 명령(vllm bench serve ...) |
--after-bench-cmd |
None |
벤치마크 후 실행할 명령 |
--show-stdout |
False |
하위 명령 표준 출력 로그 |
--server-ready-timeout |
300 |
서버 준비 대기 타임아웃(초) |
--serve-params |
None |
vllm serve 파라미터 조합 JSON(딕셔너리 리스트 또는 벤치 이름 키 딕셔너리) |
--link-vars |
"" |
serve와 bench 간 연결 변수. 예: max_num_seqs=max_concurrency,max_model_len=random_input_len |
--bench-params |
None |
vllm bench serve 파라미터 조합 JSON |
-o, --output-dir |
results |
결과를 기록할 최상위 디렉터리 |
-e, --experiment-name |
타임스탬프 | 실험 이름(결과는 output_dir/experiment_name 아래 저장) |
--num-runs |
3 |
조합당 실행 횟수 |
--dry-run |
False |
실행 없이 명령 목록만 출력 |
--resume |
False |
이전 실행 이어가기(출력 없는 조합만) |
워크로드 옵션
| 옵션 | 기본값 | 설명 |
|---|---|---|
--workload-var |
request_rate |
각 반복에서 조절할 변수(request_rate 또는 max_concurrency) |
--workload-iters |
10 |
탐색할 워크로드 레벨 수 |
vllm bench sweep serve_workload \
--workload-var request_rate \
--workload-iters 10 \
--output-dir results \
--experiment-name my-sweep
더 알아보기 (Learn more)
- vllm bench sweep serve — 일반 서빙 파라미터 스윕
- vllm bench sweep plot — 스윕 결과 그림
- vllm bench serve — 단일 서빙 벤치마크