Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
# Measured p90-ITL Pareto family: OCI jobs 471335-471337 and 471341-471342,
# using one aggregate TP8 x DCP8 worker, DSpark K=4, and max-num-seqs 2.
name: "kimi-k3-vllm-agg-gb300-dcp8-dspark4-maxseq2-mooncake-agentic"

model:
path: "moonshotai/Kimi-K3"
container: "vllm/vllm-openai:nightly-dev-arm64-cu13.0.1-75c2eef"
precision: "fp4"

identity:
model:
repo: "moonshotai/Kimi-K3"
container:
image: "vllm/vllm-openai:nightly-dev-arm64-cu13.0.1-75c2eef"
frameworks:
dynamo: "ba83080ecd31c1ce918559e576d3c5bc9e092ff1"

dynamo:
hash: "ba83080ecd31c1ce918559e576d3c5bc9e092ff1"
install: true

slurm:
time_limit: "04:00:00"

health_check:
max_attempts: 720
interval_seconds: 10

resources:
gpu_type: "gb300"
gpus_per_node: 4
agg_nodes: 2
agg_workers: 1
gpus_per_agg: 8

infra:
etcd_nats_dedicated_node: false
nats_max_payload_mb: 32

frontend:
type: dynamo
enable_multiple_frontends: false
args:
router-mode: "random"
router-session-affinity-ttl-secs: 900
env:
DYN_ROUTER_ACTIVE_REQUEST_EXPIRY_SECS: "3600"
DYN_TOKENIZER_CACHE_BYTES: "8589934592"

backend:
type: vllm
connector: null
mooncake_kv_store:
master_extra_args:
- "--eviction_high_watermark_ratio=0.95"
- "--eviction_ratio=0.10"
store_config:
metadata_server: "P2PHANDSHAKE"
global_segment_size: "150GB"
local_buffer_size: "4GB"
protocol: "rdma"
# Preserve the proven GB300 runner fabric rather than copying PR #211's
# single mlx5_0 rail, which is specific to the rail-isolated B300 fleet.
device_name: "mlx5_0,mlx5_1,mlx5_2,mlx5_3"
mode: "embedded"
enable_offload: false
aggregated_environment:
VLLM_ALLREDUCE_USE_FLASHINFER: "1"
VLLM_ENABLE_K3_LATENT_MOE_TAIL_FUSION: "1"
VLLM_USE_V2_MODEL_RUNNER: "1"
# Preserve the measured collective fallback when moving to the built image.
VLLM_USE_DIRECT_DCP_A2A: "0"
VLLM_USE_DIRECT_DCP_Q_GATHER: "0"
VLLM_USE_DIRECT_DCP_KV_GATHER: "0"
VLLM_ENGINE_READY_TIMEOUT_S: "3600"
VLLM_RPC_TIMEOUT: "600000"
VLLM_PREFIX_CACHE_RETENTION_INTERVAL: "0"
VLLM_MEMORY_PROFILER_ESTIMATE_CUDAGRAPHS: "0"
PYTHONNOUSERSITE: "1"
TORCH_CUDA_ARCH_LIST: "10.0"
PYTHONHASHSEED: "42"
VLLM_HTTP_TIMEOUT_KEEP_ALIVE: "900"
MC_GID_INDEX: "3"
MC_STORE_MEMCPY: "1"
MC_ENABLE_DEST_DEVICE_AFFINITY: "1"
MC_SLICE_SIZE: "1048576"
MC_WORKERS_PER_CTX: "4"
WITH_NVIDIA_PEERMEM: "0"
VLLM_MOONCAKE_LOAD_RECV_THREADS: "4"
vllm_config:
aggregated:
served-model-name: "moonshotai/Kimi-K3"
tensor-parallel-size: 8
decode-context-parallel-size: 8
dcp-comm-backend: "a2a"
max-num-seqs: 2
gpu-memory-utilization: 0.90
max-num-batched-tokens: 8192
trust-remote-code: true
language-model-only: true
load-format: "fastsafetensors"
moe-backend: "auto"
no-enable-flashinfer-autotune: true
enable-cumem-allocator: true
enable-prefix-caching: true
prefix-match-unit: 128
kv-cache-dtype: "fp8"
stream-interval: 10
attention-backend: "TOKENSPEED_MLA"
attention-config: '{"mla_prefill_backend":"TRTLLM_RAGGED","use_prefill_query_quantization":true}'
# Throughput jobs inject the committed K=4 golden AL (3.36); EVAL_ONLY
# preserves this real target-verification configuration.
speculative-config: '{"model":"Inferact/Kimi-K3-DSpark","attention_backend":"TOKENSPEED_MLA","method":"dspark","num_speculative_tokens":4,"draft_sample_method":"probabilistic","rejection_sample_method":"block"}'
max-cudagraph-capture-size: 1024
kv-transfer-config: '{"kv_connector":"MooncakeStoreConnector","kv_role":"kv_both","kv_load_failure_policy":"recompute","kv_connector_extra_config":{"load_async":true,"lookup_async":true,"enable_offload":false}}'

sbatch_directives:
mem: "0"
cpus-per-task: "72"
comment: >-
'{"OccupiedIdleGPUsJobReaper":{"exemptIdleTimeMins":"60","reason":"model_loading","description":"Very large model will take extra loading time."}}'

srun_options:
mem: "0"
container-remap-root: ""

benchmark:
type: custom
command: bash /infmax-workspace/benchmarks/multi_node/agentic_srt.sh
env:
INFMAX_CONTAINER_WORKSPACE: "/infmax-workspace"
AIPERF_TRACE_IDLE_GAP_CAP_SECONDS: "300"
AIPERF_LIVE_FAILED_REQUEST_THRESHOLD: "0.25"
AIPERF_REQUIRED_SERVER_METRIC_PREFIX: "vllm:"
AIPERF_HTTP_TCP_USER_TIMEOUT: "900000"
RESULT_DIR: "/logs/agentic"
PORT: "8000"
IS_MULTINODE: "true"
AIPERF_USE_DYNAMO_CONV_AWARE_ROUTING: "0"
AIPERF_DATASET_MMAP_CACHE_DIR: "/aiperf_mmap_cache"
HF_HUB_CACHE: "/hf_hub_cache"
WEKA_LOADER_OVERRIDE: "semianalysis_cc_traces_weka_062126"
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
# Measured p90-ITL Pareto family: OCI jobs 471604 (c32), 471605 (c48), and
# 471606 (c64), using one aggregate TP8 x DCP8 worker without a draft model.
name: "kimi-k3-vllm-agg-gb300-dcp8-nospec-mooncake-agentic"

model:
path: "moonshotai/Kimi-K3"
container: "vllm/vllm-openai:nightly-dev-arm64-cu13.0.1-75c2eef"
precision: "fp4"

identity:
model:
repo: "moonshotai/Kimi-K3"
container:
image: "vllm/vllm-openai:nightly-dev-arm64-cu13.0.1-75c2eef"
frameworks:
dynamo: "ba83080ecd31c1ce918559e576d3c5bc9e092ff1"

dynamo:
hash: "ba83080ecd31c1ce918559e576d3c5bc9e092ff1"
install: true

slurm:
time_limit: "04:00:00"

health_check:
max_attempts: 720
interval_seconds: 10

resources:
gpu_type: "gb300"
gpus_per_node: 4
agg_nodes: 2
agg_workers: 1
gpus_per_agg: 8

infra:
etcd_nats_dedicated_node: false
nats_max_payload_mb: 32

frontend:
type: dynamo
enable_multiple_frontends: false
args:
router-mode: "random"
router-session-affinity-ttl-secs: 900
env:
DYN_ROUTER_ACTIVE_REQUEST_EXPIRY_SECS: "3600"
DYN_TOKENIZER_CACHE_BYTES: "8589934592"

backend:
type: vllm
connector: null
mooncake_kv_store:
master_extra_args:
- "--eviction_high_watermark_ratio=0.95"
- "--eviction_ratio=0.10"
store_config:
metadata_server: "P2PHANDSHAKE"
global_segment_size: "150GB"
local_buffer_size: "4GB"
protocol: "rdma"
device_name: "mlx5_0,mlx5_1,mlx5_2,mlx5_3"
mode: "embedded"
enable_offload: false
aggregated_environment:
VLLM_ALLREDUCE_USE_FLASHINFER: "1"
VLLM_ENABLE_K3_LATENT_MOE_TAIL_FUSION: "1"
VLLM_USE_V2_MODEL_RUNNER: "1"
# Preserve the measured collective fallback when moving to the built image.
VLLM_USE_DIRECT_DCP_A2A: "0"
VLLM_USE_DIRECT_DCP_Q_GATHER: "0"
VLLM_USE_DIRECT_DCP_KV_GATHER: "0"
VLLM_ENGINE_READY_TIMEOUT_S: "3600"
VLLM_RPC_TIMEOUT: "600000"
VLLM_PREFIX_CACHE_RETENTION_INTERVAL: "0"
VLLM_MEMORY_PROFILER_ESTIMATE_CUDAGRAPHS: "0"
PYTHONNOUSERSITE: "1"
TORCH_CUDA_ARCH_LIST: "10.0"
PYTHONHASHSEED: "42"
VLLM_HTTP_TIMEOUT_KEEP_ALIVE: "900"
MC_GID_INDEX: "3"
MC_STORE_MEMCPY: "1"
MC_ENABLE_DEST_DEVICE_AFFINITY: "1"
MC_SLICE_SIZE: "1048576"
MC_WORKERS_PER_CTX: "4"
WITH_NVIDIA_PEERMEM: "0"
VLLM_MOONCAKE_LOAD_RECV_THREADS: "4"
vllm_config:
aggregated:
served-model-name: "moonshotai/Kimi-K3"
tensor-parallel-size: 8
decode-context-parallel-size: 8
dcp-comm-backend: "a2a"
gpu-memory-utilization: 0.90
max-num-batched-tokens: 16384
trust-remote-code: true
language-model-only: true
load-format: "fastsafetensors"
moe-backend: "auto"
no-enable-flashinfer-autotune: true
enable-prefix-caching: true
prefix-match-unit: 128
kv-cache-dtype: "fp8"
stream-interval: 10
attention-backend: "FLASHINFER_MLA"
attention-config: '{"mla_prefill_backend":"TRTLLM_RAGGED","use_prefill_query_quantization":true}'
max-cudagraph-capture-size: 1024
kv-transfer-config: '{"kv_connector":"MooncakeStoreConnector","kv_role":"kv_both","kv_load_failure_policy":"recompute","kv_connector_extra_config":{"load_async":true,"lookup_async":true,"enable_offload":false}}'

sbatch_directives:
mem: "0"
cpus-per-task: "72"
comment: >-
'{"OccupiedIdleGPUsJobReaper":{"exemptIdleTimeMins":"60","reason":"model_loading","description":"Very large model will take extra loading time."}}'

srun_options:
mem: "0"
container-remap-root: ""

benchmark:
type: custom
command: bash /infmax-workspace/benchmarks/multi_node/agentic_srt.sh
env:
INFMAX_CONTAINER_WORKSPACE: "/infmax-workspace"
AIPERF_TRACE_IDLE_GAP_CAP_SECONDS: "300"
AIPERF_LIVE_FAILED_REQUEST_THRESHOLD: "0.25"
AIPERF_REQUIRED_SERVER_METRIC_PREFIX: "vllm:"
AIPERF_HTTP_TCP_USER_TIMEOUT: "900000"
RESULT_DIR: "/logs/agentic"
PORT: "8000"
IS_MULTINODE: "true"
AIPERF_USE_DYNAMO_CONV_AWARE_ROUTING: "0"
AIPERF_DATASET_MMAP_CACHE_DIR: "/aiperf_mmap_cache"
HF_HUB_CACHE: "/hf_hub_cache"
WEKA_LOADER_OVERRIDE: "semianalysis_cc_traces_weka_062126"
Loading