feat: add PDServe project files (3/7)
PDServe ??? openEuler ? Prefill/Decode ??????????????Prefill?Decode????????????????,?? GPU ?????????????????????? Benchmark;?? GPU ?,?? vLLM/NIXL ??? kv_transfer_params ????? Decode ???
kv_transfer_params
????:??????????Docker/Kubernetes ??????????????????????????????????? mock ??,??? GPU ??????????? docs/deployment.md ??? GPU ????
docs/deployment.md
pdserve-
?? Python 3.11+,??????????? Python ??
python3 scripts/run_mock_cluster.py
????????????????:python3 scripts/run_mock_cluster.py --smoke?
python3 scripts/run_mock_cluster.py --smoke
????????:
curl http://127.0.0.1:8000/v1/completions \ -H "Content-Type: application/json" \ -d '{ "request_id": "demo-001", "model": "mock-dense", "prompt": "Explain prefill/decode disaggregation", "max_tokens": 16, "slo": {"ttft_ms": 1200, "tpot_ms": 80, "deadline_ms": 15000} }'
????????????:
python3 -m unittest discover -s tests -v python3 -m benchmark.selftest --requests 30 --concurrency 6
?????? openeuler/openeuler:24.03-lts-sp4,?? root ????:
openeuler/openeuler:24.03-lts-sp4
docker compose up --build -d curl http://127.0.0.1:8000/health docker compose down
2 ? NVIDIA GPU ? vLLM/NIXL ??:
MODEL=Qwen/Qwen3-0.6B \ docker compose -f docker-compose.yml -f docker-compose.vllm.yml up --build
???????UCX/NIXL ???????? ?????vLLM ??????,PD ???????????? TTFT ? token ???,??????????;?????????????????
4 ? GPU ?? 2-way TP ? Qwen3.6 MoE profile:
MODEL=Qwen/Qwen3.6-35B-A3B \ docker compose -f docker-compose.yml -f docker-compose.vllm.yml \ -f docker-compose.vllm-4gpu.yml up --build
?? Dense/MoE ??????? configs/model-matrix.toml ???????????:
configs/model-matrix.toml
python3 -m benchmark.model_matrix --list python3 -m benchmark.model_matrix --profile qwen36_moe --sample-gpu
????? mock ???30 ????? 6?? 128 ?? token / 16 ?? token:
??? mock ???,2P2D ?? 1P1D ?????? 95.8%,P99 E2E ??? 45.3%?????? 100% ?????,??? Prefill ??????????,????????? JSON ?? results/example-*.json,????? Benchmark ???
results/example-*.json
??? 5 ? Prefill+Decode ????????? 50/50 ??,?? 26 ???? 1 ??? KV ??????;? results/example-soak.json??????????????,??????? mock ???
results/example-soak.json
pdserve/ ???????????????? benchmark/ ???????????? configs/ TOML ???? deploy/ Kubernetes ???????? docs/ ?????????API ????? scripts/ ?? 2P2D ??????? tests/ ????? HTTP ????? docker-compose.yml openEuler CPU/mock ?? docker-compose.vllm.yml vLLM/NIXL GPU ???? docker-compose.vllm-4gpu.yml Dense/MoE 2-way TP ? GPU ????
Dockerfile
benchmark/model_matrix.py
tests/test_integration.py
benchmark.selftest
benchmark.soak
benchmark.model_matrix
Mulan PSL v2,? LICENSE?
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
PDServe:????SLO ??? PD ??????
PDServe ??? openEuler ? Prefill/Decode ??????????????Prefill?Decode????????????????,?? GPU ?????????????????????? Benchmark;?? GPU ?,?? vLLM/NIXL ???
kv_transfer_params????? Decode ???????
pdserve-??????????,?? dry-run,??????????????
?? Python 3.11+,??????????? Python ??
????????????????:
python3 scripts/run_mock_cluster.py --smoke?????????:
????????????:
openEuler ????
??????
openeuler/openeuler:24.03-lts-sp4,?? root ????:2 ? NVIDIA GPU ? vLLM/NIXL ??:
???????UCX/NIXL ???????? ?????vLLM ??????,PD ???????????? TTFT ? token ???,??????????;?????????????????
4 ? GPU ?? 2-way TP ? Qwen3.6 MoE profile:
?? Dense/MoE ???????
configs/model-matrix.toml???????????:?????
????? mock ???30 ????? 6?? 128 ?? token / 16 ?? token:
??? mock ???,2P2D ?? 1P1D ?????? 95.8%,P99 E2E ??? 45.3%?????? 100% ?????,??? Prefill ??????????,????????? JSON ??
results/example-*.json,????? Benchmark ?????? 5 ? Prefill+Decode ????????? 50/50 ??,?? 26 ???? 1 ??? KV ??????;?
results/example-soak.json??????????????,??????? mock ???????
???????
????????
Dockerfile?? openEuler 24.03 LTS SP4,? root ??configs/model-matrix.toml?????? ID;benchmark/model_matrix.py?????????? SLO ??tests/test_integration.pybenchmark.selftest?benchmark.soak?benchmark.model_matrix??? JSON??
??
???
Mulan PSL v2,? LICENSE?