From e747e8d1c90262796211a0b563870040c9a49c55 Mon Sep 17 00:00:00 2001 From: Andrey Cheptsov Date: Thu, 20 Aug 2026 13:52:40 +0200 Subject: [PATCH] Removed `name` from node groups examples; plus few minor edits --- mkdocs/docs/concepts/tasks.md | 20 ++++++++----------- .../docs/examples/clusters/nccl-rccl-tests.md | 12 ++++------- mkdocs/docs/examples/training/ray-ragen.md | 6 ++---- 3 files changed, 14 insertions(+), 24 deletions(-) diff --git a/mkdocs/docs/concepts/tasks.md b/mkdocs/docs/concepts/tasks.md index 0d82e5d2a..d35f9d3c9 100644 --- a/mkdocs/docs/concepts/tasks.md +++ b/mkdocs/docs/concepts/tasks.md @@ -223,10 +223,10 @@ the index of the node within that group. Currently, only `resources`, `commands`, and `ports` can be configured per node group. [`groups`](../reference/dstack.yml/task.md#groups) and top-level `nodes` are mutually exclusive.Support for other properties is coming soon. -??? info "Prefill/decode example" - Node groups can mix CPU and GPU roles. This SGLang prefill/decode split uses a CPU +??? info "PD disaggregation" + While PD disaggregaton is mostly used with [services](services.md#pd-disaggregation), it also possible to run it as tasks. The example below runs a CPU router (`groups[0]`, the master) and GPU workers. `startup_order: workers-first` - starts prefill and decode before the router. + instructs `dstack` to start prefill and decode workers before the router.
@@ -241,8 +241,7 @@ Currently, only `resources`, `commands`, and `ports` can be configured per node startup_order: workers-first groups: # Router (CPU) — master node; wires prefill + decode by IP - - name: router - nodes: 1 + - nodes: 1 commands: - pip install smg - | @@ -259,8 +258,7 @@ Currently, only `resources`, `commands`, and `ports` can be configured per node resources: cpu: 4 - - name: prefill - nodes: 1 + - nodes: 1 commands: - | python -m sglang.launch_server \ @@ -272,8 +270,7 @@ Currently, only `resources`, `commands`, and `ports` can be configured per node resources: gpu: H200 - - name: decode - nodes: 1 + - nodes: 1 commands: - | python -m sglang.launch_server \ @@ -287,9 +284,8 @@ Currently, only `resources`, `commands`, and `ports` can be configured per node
-!!! info "Examples" - See the [Ray+RAGEN](../examples/training/ray-ragen.md) example for running a Ray cluster, - and the [NCCL/RCCL tests](../examples/clusters/nccl-rccl-tests.md) example for running `mpirun` with node groups. +> See the [Ray+RAGEN](../examples/training/ray-ragen.md) example for running a Ray cluster, +and the [NCCL/RCCL tests](../examples/clusters/nccl-rccl-tests.md) example for running `mpirun` with node groups. ### Resources diff --git a/mkdocs/docs/examples/clusters/nccl-rccl-tests.md b/mkdocs/docs/examples/clusters/nccl-rccl-tests.md index d2ad32dd3..e15ddcf04 100644 --- a/mkdocs/docs/examples/clusters/nccl-rccl-tests.md +++ b/mkdocs/docs/examples/clusters/nccl-rccl-tests.md @@ -29,8 +29,7 @@ Here's an example of a task that runs AllReduce test on 2 nodes, each with 4 GPU - NCCL_DEBUG=INFO groups: - - name: master # The name property is optional - nodes: 1 + - nodes: 1 commands: - | mpirun \ @@ -44,8 +43,7 @@ Here's an example of a task that runs AllReduce test on 2 nodes, each with 4 GPU gpu: nvidia:1..8 shm_size: 16GB - - name: workers - nodes: 1 + - nodes: 1 commands: - sleep infinity resources: @@ -83,8 +81,7 @@ Here's an example of a task that runs AllReduce test on 2 nodes, each with 4 GPU - OPEN_MPI_HOME=/usr/lib/x86_64-linux-gnu/openmpi groups: - - name: master # The name property is optional - nodes: 1 + - nodes: 1 commands: # Setup MPI and build RCCL tests - apt-get install -y git libopenmpi-dev openmpi-bin @@ -110,8 +107,7 @@ Here's an example of a task that runs AllReduce test on 2 nodes, each with 4 GPU resources: gpu: MI300X:8 - - name: workers - nodes: 1 + - nodes: 1 commands: # Setup MPI and build RCCL tests - apt-get install -y git libopenmpi-dev openmpi-bin diff --git a/mkdocs/docs/examples/training/ray-ragen.md b/mkdocs/docs/examples/training/ray-ragen.md index fd72ba563..d1119b36f 100644 --- a/mkdocs/docs/examples/training/ray-ragen.md +++ b/mkdocs/docs/examples/training/ray-ragen.md @@ -30,8 +30,7 @@ env: - WANDB_API_KEY groups: - - name: head # The name property is optional - nodes: 1 + - nodes: 1 commands: - wget -O miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh - bash miniconda.sh -b -p /workflow/miniconda @@ -52,8 +51,7 @@ groups: gpu: 80GB:8 shm_size: 128GB - - name: workers - nodes: 1 + - nodes: 1 commands: - wget -O miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh - bash miniconda.sh -b -p /workflow/miniconda