183 lines
5.2 KiB
YAML
183 lines
5.2 KiB
YAML
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: nvidia-config
|
|
data:
|
|
prefill.yaml: |
|
|
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
tensor_parallel_size: 8
|
|
moe_expert_parallel_size: 1
|
|
enable_attention_dp: false
|
|
max_num_tokens: 8192
|
|
trust_remote_code: true
|
|
backend: pytorch
|
|
enable_chunked_prefill: true
|
|
# Overlap scheduler not currently supported in prefill only workers.
|
|
disable_overlap_scheduler: true
|
|
kv_cache_config:
|
|
free_gpu_memory_fraction: 0.80
|
|
cache_transceiver_config:
|
|
backend: DEFAULT
|
|
|
|
decode.yaml: |
|
|
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
tensor_parallel_size: 8
|
|
moe_expert_parallel_size: 1
|
|
enable_attention_dp: false
|
|
max_num_tokens: 8192
|
|
trust_remote_code: true
|
|
backend: pytorch
|
|
enable_chunked_prefill: true
|
|
disable_overlap_scheduler: false
|
|
kv_cache_config:
|
|
free_gpu_memory_fraction: 0.80
|
|
cache_transceiver_config:
|
|
backend: DEFAULT
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolumeClaim
|
|
metadata:
|
|
name: models
|
|
spec:
|
|
accessModes:
|
|
- ReadWriteMany
|
|
resources:
|
|
requests:
|
|
storage: 100Gi
|
|
---
|
|
apiVersion: nvidia.com/v1alpha1
|
|
kind: DynamoGraphDeployment
|
|
metadata:
|
|
name: trtllm-disagg-tp8
|
|
spec:
|
|
backendFramework: trtllm
|
|
pvcs:
|
|
- name: models
|
|
envs:
|
|
- name: OMPI_ALLOW_RUN_AS_ROOT
|
|
value: "1"
|
|
- name: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM
|
|
value: "1"
|
|
- name: HF_HOME
|
|
value: "/models"
|
|
services:
|
|
Frontend:
|
|
dynamoNamespace: trtllm-disagg
|
|
componentType: frontend
|
|
replicas: 1
|
|
extraPodSpec:
|
|
mainContainer:
|
|
image: my-registry/trtllm-runtime:my-tag
|
|
workingDir: /workspace/examples/backends/trtllm
|
|
command:
|
|
- python3
|
|
- -m
|
|
- dynamo.frontend
|
|
args:
|
|
- --http-port
|
|
- "8000"
|
|
prefill:
|
|
volumeMounts:
|
|
- name: models
|
|
mountPoint: /models
|
|
dynamoNamespace: trtllm-disagg
|
|
envFromSecret: hf-token-secret
|
|
componentType: worker
|
|
replicas: 1
|
|
multinode:
|
|
nodeCount: 2
|
|
resources:
|
|
limits:
|
|
gpu: "4"
|
|
extraPodSpec:
|
|
volumes:
|
|
- name: nvidia-config
|
|
configMap:
|
|
name: nvidia-config
|
|
mainContainer:
|
|
volumeMounts:
|
|
- name: nvidia-config
|
|
mountPath: /workspace/
|
|
readOnly: true
|
|
image: my-registry/trtllm-runtime:my-tag
|
|
workingDir: /workspace/
|
|
command:
|
|
- python3
|
|
- -m
|
|
- dynamo.trtllm
|
|
args:
|
|
- --model-path
|
|
- Qwen/Qwen3-0.6B
|
|
- --served-model-name
|
|
- Qwen/Qwen3-0.6B
|
|
- --extra-engine-args
|
|
- /workspace/prefill.yaml
|
|
- --disaggregation-mode
|
|
- prefill
|
|
decode:
|
|
volumeMounts:
|
|
- name: models
|
|
mountPoint: /models
|
|
dynamoNamespace: trtllm-disagg
|
|
envFromSecret: hf-token-secret
|
|
componentType: worker
|
|
replicas: 1
|
|
multinode:
|
|
nodeCount: 2
|
|
resources:
|
|
limits:
|
|
gpu: "4"
|
|
extraPodSpec:
|
|
volumes:
|
|
- name: nvidia-config
|
|
configMap:
|
|
name: nvidia-config
|
|
mainContainer:
|
|
volumeMounts:
|
|
- name: nvidia-config
|
|
mountPath: /workspace/
|
|
readOnly: true
|
|
image: my-registry/trtllm-runtime:my-tag
|
|
workingDir: /workspace/
|
|
command:
|
|
- python3
|
|
- -m
|
|
- dynamo.trtllm
|
|
args:
|
|
- --model-path
|
|
- Qwen/Qwen3-0.6B
|
|
- --served-model-name
|
|
- Qwen/Qwen3-0.6B
|
|
- --extra-engine-args
|
|
- /workspace/decode.yaml
|
|
- --disaggregation-mode
|
|
- decode
|