vllm - 💡(How to fix) Fix [Bug]: Workspace allocation failure when combining Decode Context Parallelism (DCP) with EAGLE3 speculative decoding [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
vllm-project/vllm#40791Fetched 2026-04-25 06:04:03
View on GitHub
Comments
0
Participants
1
Timeline
1
Reactions
0
Participants
Timeline (top)
labeled ×1

Error Message

AssertionError: Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.

Root Cause

Engine core then dies with:

RuntimeError: Worker failed with error 'Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.', please check the stack trace above for the root cause

Fix Action

Fix / Workaround

============================== CPU Info

Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 52 bits physical, 57 bits virtual Byte Order: Little Endian CPU(s): 192 On-line CPU(s) list: 0-191 Vendor ID: GenuineIntel Model name: INTEL(R) XEON(R) PLATINUM 8558 CPU family: 6 Model: 207 Thread(s) per core: 2 Core(s) per socket: 48 Socket(s): 2 Stepping: 2 CPU max MHz: 4000.0000 CPU min MHz: 800.0000 BogoMIPS: 4200.00 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cat_l2 cdp_l3 invpcid_single intel_ppin cdp_l2 ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local split_lock_detect avx_vnni avx512_bf16 wbnoinvd dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req avx512vbmi umip pku ospke waitpkg avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq la57 rdpid bus_lock_detect cldemote movdiri movdir64b enqcmd fsrm md_clear serialize tsxldtrk pconfig arch_lbr amx_bf16 avx512_fp16 amx_tile amx_int8 flush_l1d arch_capabilities Virtualization: VT-x L1d cache: 4.5 MiB (96 instances) L1i cache: 3 MiB (96 instances) L2 cache: 192 MiB (96 instances) L3 cache: 520 MiB (2 instances) NUMA node(s): 2 NUMA node0 CPU(s): 0-47,96-143 NUMA node1 CPU(s): 48-95,144-191 Vulnerability Gather data sampling: Not affected Vulnerability Itlb multihit: Not affected Vulnerability L1tf: Not affected Vulnerability Mds: Not affected Vulnerability Meltdown: Not affected Vulnerability Mmio stale data: Not affected Vulnerability Retbleed: Not affected Vulnerability Spec rstack overflow: Not affected Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Vulnerability Spectre v2: Mitigation; Enhanced IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence Vulnerability Srbds: Not affected Vulnerability Tsx async abort: Not affected

Code Example

==============================
        System Info
==============================
OS                           : Ubuntu 22.04.4 LTS (x86_64)
GCC version                  : (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0
Clang version                : Could not collect
CMake version                : Could not collect
Libc version                 : glibc-2.35

==============================
       PyTorch Info
==============================
PyTorch version              : 2.9.0+cu128
Is debug build               : False
CUDA used to build PyTorch   : 12.8
ROCM used to build PyTorch   : N/A
XPU used to build PyTorch    : N/A

==============================
      Python Environment
==============================
Python version               : 3.13.9 | packaged by Anaconda, Inc. | (main, Oct 21 2025, 19:16:10) [GCC 11.2.0] (64-bit runtime)
Python platform              : Linux-5.15.0-94-generic-x86_64-with-glibc2.35

==============================
       CUDA / GPU Info
==============================
Is CUDA available            : True
CUDA runtime version         : 12.6.85
CUDA_MODULE_LOADING set to   :
GPU models and configuration :
GPU 0: NVIDIA H20-3e
GPU 1: NVIDIA H20-3e
GPU 2: NVIDIA H20-3e
GPU 3: NVIDIA H20-3e
GPU 4: NVIDIA H20-3e
GPU 5: NVIDIA H20-3e
GPU 6: NVIDIA H20-3e
GPU 7: NVIDIA H20-3e

Nvidia driver version        : 570.86.15
cuDNN version                : Could not collect
HIP runtime version          : N/A
MIOpen runtime version       : N/A
Is XNNPACK available         : True

==============================
          CPU Info
==============================
Architecture:                       x86_64
CPU op-mode(s):                     32-bit, 64-bit
Address sizes:                      52 bits physical, 57 bits virtual
Byte Order:                         Little Endian
CPU(s):                             192
On-line CPU(s) list:                0-191
Vendor ID:                          GenuineIntel
Model name:                         INTEL(R) XEON(R) PLATINUM 8558
CPU family:                         6
Model:                              207
Thread(s) per core:                 2
Core(s) per socket:                 48
Socket(s):                          2
Stepping:                           2
CPU max MHz:                        4000.0000
CPU min MHz:                        800.0000
BogoMIPS:                           4200.00
Flags:                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cat_l2 cdp_l3 invpcid_single intel_ppin cdp_l2 ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local split_lock_detect avx_vnni avx512_bf16 wbnoinvd dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req avx512vbmi umip pku ospke waitpkg avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq la57 rdpid bus_lock_detect cldemote movdiri movdir64b enqcmd fsrm md_clear serialize tsxldtrk pconfig arch_lbr amx_bf16 avx512_fp16 amx_tile amx_int8 flush_l1d arch_capabilities
Virtualization:                     VT-x
L1d cache:                          4.5 MiB (96 instances)
L1i cache:                          3 MiB (96 instances)
L2 cache:                           192 MiB (96 instances)
L3 cache:                           520 MiB (2 instances)
NUMA node(s):                       2
NUMA node0 CPU(s):                  0-47,96-143
NUMA node1 CPU(s):                  48-95,144-191
Vulnerability Gather data sampling: Not affected
Vulnerability Itlb multihit:        Not affected
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Not affected
Vulnerability Retbleed:             Not affected
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass:    Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Vulnerability Spectre v1:           Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; Enhanced IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence
Vulnerability Srbds:                Not affected
Vulnerability Tsx async abort:      Not affected

==============================
Versions of relevant libraries
==============================
[pip3] flashinfer-python==0.5.3
[pip3] numpy==2.2.6
[pip3] nvidia-cublas-cu12==12.8.4.1
[pip3] nvidia-cuda-cupti-cu12==12.8.90
[pip3] nvidia-cuda-nvrtc-cu12==12.8.93
[pip3] nvidia-cuda-runtime-cu12==12.8.90
[pip3] nvidia-cudnn-cu12==9.10.2.21
[pip3] nvidia-cudnn-frontend==1.16.0
[pip3] nvidia-cufft-cu12==11.3.3.83
[pip3] nvidia-cufile-cu12==1.13.1.3
[pip3] nvidia-curand-cu12==10.3.9.90
[pip3] nvidia-cusolver-cu12==11.7.3.90
[pip3] nvidia-cusparse-cu12==12.5.8.93
[pip3] nvidia-cusparselt-cu12==0.7.1
[pip3] nvidia-cutlass==4.2.0.0
[pip3] nvidia-cutlass-dsl==4.3.2
[pip3] nvidia-ml-py==13.580.82
[pip3] nvidia-nccl-cu12==2.27.5
[pip3] nvidia-nvjitlink-cu12==12.8.93
[pip3] nvidia-nvshmem-cu12==3.3.20
[pip3] nvidia-nvtx-cu12==12.8.90
[pip3] pyzmq==27.1.0
[pip3] torch==2.9.0
[pip3] torchaudio==2.9.0
[pip3] torchvision==0.24.0
[pip3] transformers==4.57.3
[pip3] triton==3.5.0
[conda] cuda-cccl_linux-64                   12.6.77          0                   nvidia
[conda] cuda-command-line-tools              12.6.3           0                   nvidia
[conda] cuda-compiler                        12.6.3           0                   nvidia
[conda] cuda-crt-dev_linux-64                12.6.85          0                   nvidia
[conda] cuda-crt-tools                       12.6.85          0                   nvidia
[conda] cuda-cudart                          12.6.77          0                   nvidia
[conda] cuda-cudart-dev                      12.6.77          0                   nvidia
[conda] cuda-cudart-dev_linux-64             12.6.77          0                   nvidia
[conda] cuda-cudart-static                   12.6.77          0                   nvidia
[conda] cuda-cudart-static_linux-64          12.6.77          0                   nvidia
[conda] cuda-cudart_linux-64                 12.6.77          0                   nvidia
[conda] cuda-cuobjdump                       12.6.77          0                   nvidia
[conda] cuda-cupti                           12.6.80          0                   nvidia
[conda] cuda-cupti-dev                       12.6.80          0                   nvidia
[conda] cuda-cuxxfilt                        12.6.77          0                   nvidia
[conda] cuda-driver-dev                      12.6.77          0                   nvidia
[conda] cuda-driver-dev_linux-64             12.6.77          0                   nvidia
[conda] cuda-gdb                             12.6.77          0                   nvidia
[conda] cuda-libraries                       12.6.3           0                   nvidia
[conda] cuda-libraries-dev                   12.6.3           0                   nvidia
[conda] cuda-nsight                          12.6.77          0                   nvidia
[conda] cuda-nvcc                            12.6.85          0                   nvidia
[conda] cuda-nvcc-dev_linux-64               12.6.85          0                   nvidia
[conda] cuda-nvcc-impl                       12.6.85          0                   nvidia
[conda] cuda-nvcc-tools                      12.6.85          0                   nvidia
[conda] cuda-nvcc_linux-64                   12.6.85          0                   nvidia
[conda] cuda-nvdisasm                        12.6.77          0                   nvidia
[conda] cuda-nvml-dev                        12.6.77          2                   nvidia
[conda] cuda-nvprof                          12.6.80          0                   nvidia
[conda] cuda-nvprune                         12.6.77          0                   nvidia
[conda] cuda-nvrtc                           12.6.85          0                   nvidia
[conda] cuda-nvrtc-dev                       12.6.85          0                   nvidia
[conda] cuda-nvtx                            12.6.77          0                   nvidia
[conda] cuda-nvvm-dev_linux-64               12.6.85          0                   nvidia
[conda] cuda-nvvm-impl                       12.6.85          0                   nvidia
[conda] cuda-nvvm-tools                      12.6.85          0                   nvidia
[conda] cuda-nvvp                            12.6.80          0                   nvidia
[conda] cuda-opencl                          12.6.77          0                   nvidia
[conda] cuda-opencl-dev                      12.6.77          0                   nvidia
[conda] cuda-profiler-api                    12.6.77          0                   nvidia
[conda] cuda-sanitizer-api                   12.6.77          0                   nvidia
[conda] cuda-toolkit                         12.6.3           0                   nvidia
[conda] cuda-tools                           12.6.3           0                   nvidia
[conda] cuda-visual-tools                    12.6.3           0                   nvidia
[conda] flashinfer-python                    0.5.3            pypi_0              pypi
[conda] gds-tools                            1.11.1.6         0                   nvidia
[conda] libcublas                            12.6.4.1         0                   nvidia
[conda] libcublas-dev                        12.6.4.1         0                   nvidia
[conda] libcufft                             11.3.0.4         0                   nvidia
[conda] libcufft-dev                         11.3.0.4         0                   nvidia
[conda] libcufile                            1.11.1.6         0                   nvidia
[conda] libcufile-dev                        1.11.1.6         0                   nvidia
[conda] libcurand                            10.3.7.77        0                   nvidia
[conda] libcurand-dev                        10.3.7.77        0                   nvidia
[conda] libcusolver                          11.7.1.2         0                   nvidia
[conda] libcusolver-dev                      11.7.1.2         0                   nvidia
[conda] libcusparse                          12.5.4.2         0                   nvidia
[conda] libcusparse-dev                      12.5.4.2         0                   nvidia
[conda] libnpp                               12.2.5.30        0                   nvidia
[conda] libnpp-dev                           12.2.5.30        0                   nvidia
[conda] libnvfatbin                          12.6.77          0                   nvidia
[conda] libnvfatbin-dev                      12.6.77          0                   nvidia
[conda] libnvjitlink                         12.6.85          0                   nvidia
[conda] libnvjitlink-dev                     12.6.85          0                   nvidia
[conda] libnvjpeg                            12.3.1.117       0                   nvidia
[conda] libnvjpeg-dev                        12.3.1.117       0                   nvidia
[conda] nsight-compute                       2024.3.2.3       0                   nvidia
[conda] numpy                                2.2.6            pypi_0              pypi
[conda] nvidia-cublas-cu12                   12.8.4.1         pypi_0              pypi
[conda] nvidia-cuda-cupti-cu12               12.8.90          pypi_0              pypi
[conda] nvidia-cuda-nvrtc-cu12               12.8.93          pypi_0              pypi
[conda] nvidia-cuda-runtime-cu12             12.8.90          pypi_0              pypi
[conda] nvidia-cudnn-cu12                    9.10.2.21        pypi_0              pypi
[conda] nvidia-cudnn-frontend                1.16.0           pypi_0              pypi
[conda] nvidia-cufft-cu12                    11.3.3.83        pypi_0              pypi
[conda] nvidia-cufile-cu12                   1.13.1.3         pypi_0              pypi
[conda] nvidia-curand-cu12                   10.3.9.90        pypi_0              pypi
[conda] nvidia-cusolver-cu12                 11.7.3.90        pypi_0              pypi
[conda] nvidia-cusparse-cu12                 12.5.8.93        pypi_0              pypi
[conda] nvidia-cusparselt-cu12               0.7.1            pypi_0              pypi
[conda] nvidia-cutlass                       4.2.0.0          pypi_0              pypi
[conda] nvidia-cutlass-dsl                   4.3.2            pypi_0              pypi
[conda] nvidia-ml-py                         13.580.82        pypi_0              pypi
[conda] nvidia-nccl-cu12                     2.27.5           pypi_0              pypi
[conda] nvidia-nvjitlink-cu12                12.8.93          pypi_0              pypi
[conda] nvidia-nvshmem-cu12                  3.3.20           pypi_0              pypi
[conda] nvidia-nvtx-cu12                     12.8.90          pypi_0              pypi
[conda] pyzmq                                27.1.0           pypi_0              pypi
[conda] torch                                2.9.0            pypi_0              pypi
[conda] torchaudio                           2.9.0            pypi_0              pypi
[conda] torchvision                          0.24.0           pypi_0              pypi
[conda] transformers                         4.57.3           pypi_0              pypi
[conda] triton                               3.5.0            pypi_0              pypi

==============================
         vLLM Info
==============================
ROCM Version                 : Could not collect
vLLM Version                 : 0.12.0
vLLM Build Flags:
  CUDA Archs: Not Set; ROCm: Disabled; XPU: Disabled
GPU Topology:
        GPU0    GPU1    GPU2    GPU3    GPU4    GPU5    GPU6    GPU7    NIC0    NIC1    NIC2    NIC3    NIC4    NIC5CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      NV18    NV18    NV18    NV18    NV18    NV18    NV18    PIX     NODE    NODE    NODE    SYS     SYS0-47,96-143      0               N/A
GPU1    NV18     X      NV18    NV18    NV18    NV18    NV18    NV18    PIX     NODE    NODE    NODE    SYS     SYS0-47,96-143      0               N/A
GPU2    NV18    NV18     X      NV18    NV18    NV18    NV18    NV18    NODE    NODE    NODE    PIX     SYS     SYS0-47,96-143      0               N/A
GPU3    NV18    NV18    NV18     X      NV18    NV18    NV18    NV18    NODE    NODE    NODE    PIX     SYS     SYS0-47,96-143      0               N/A
GPU4    NV18    NV18    NV18    NV18     X      NV18    NV18    NV18    SYS     SYS     SYS     SYS     PIX     NODE48-95,144-191   1               N/A
GPU5    NV18    NV18    NV18    NV18    NV18     X      NV18    NV18    SYS     SYS     SYS     SYS     PIX     NODE48-95,144-191   1               N/A
GPU6    NV18    NV18    NV18    NV18    NV18    NV18     X      NV18    SYS     SYS     SYS     SYS     NODE    PIX48-95,144-191    1               N/A
GPU7    NV18    NV18    NV18    NV18    NV18    NV18    NV18     X      SYS     SYS     SYS     SYS     NODE    PIX48-95,144-191    1               N/A
NIC0    PIX     PIX     NODE    NODE    SYS     SYS     SYS     SYS      X      NODE    NODE    NODE    SYS     SYS
NIC1    NODE    NODE    NODE    NODE    SYS     SYS     SYS     SYS     NODE     X      PIX     NODE    SYS     SYS
NIC2    NODE    NODE    NODE    NODE    SYS     SYS     SYS     SYS     NODE    PIX      X      NODE    SYS     SYS
NIC3    NODE    NODE    PIX     PIX     SYS     SYS     SYS     SYS     NODE    NODE    NODE     X      SYS     SYS
NIC4    SYS     SYS     SYS     SYS     PIX     PIX     NODE    NODE    SYS     SYS     SYS     SYS      X      NODE
NIC5    SYS     SYS     SYS     SYS     NODE    NODE    PIX     PIX     SYS     SYS     SYS     SYS     NODE     X

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

NIC Legend:

  NIC0: mlx5_0
  NIC1: mlx5_1
  NIC2: mlx5_2
  NIC3: mlx5_3
  NIC4: mlx5_4
  NIC5: mlx5_5

==============================
     Environment Variables
==============================
TORCHINDUCTOR_CACHE_DIR=/ssd2/cache/torchinductor/user1
PYTORCH_NVML_BASED_CUDA_CHECK=1
TORCHINDUCTOR_COMPILE_THREADS=1

---

docker pull vllm/vllm-openai:deepseekv4-cu130

---

docker run --rm -it --name vllm-kimi-k2.6 \
       --gpus all \
       --ipc=host \
       --ulimit memlock=-1 \
       --ulimit stack=67108864 \
       -e VLLM_MEMORY_PROFILER_ESTIMATE_CUDAGRAPHS=1 \
       -p 8000:8000 \
       -v /model_files:/model_files \
       vllm/vllm-openai:deepseekv4-cu130 \
       /model_files/kimi-k2.6 \
       --tensor-parallel-size 8 \
       --served-model-name /model_files/h20/Kimi-K2.5 \
       --compilation-config '{"pass_config": {"fuse_allreduce_rms": true}}' \
       --speculative-config '{"model": "/model_files/kimi-k2.6-eagle3", "method": "eagle3", "num_speculative_tokens": 3}' \
       --gpu-memory-utilization 0.90 \
       --max-num-batched-tokens 16384 \
       --mm-encoder-tp-mode data \
       --mm-processor-cache-type shm \
       --mm-processor-cache-gb 128 \
       --max-num-seqs 25 \
       --enable-chunked-prefill \
       --enable-prefix-caching \
       --host 0.0.0.0 \
       --port 8000 \
       --enable-auto-tool-choice \
       --trust-remote-code \
       --tool-call-parser kimi_k2 \
       --reasoning-parser kimi_k2 \
       --decode-context-parallel-size 8 \
       --safetensors-load-strategy prefetch

---

AssertionError: Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.

---

(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/worker/gpu_model_runner.py", line 4729, in propose_draft_token_ids
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     draft_token_ids = self.drafter.propose(
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/spec_decode/eagle.py", line 482, in propose
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     ret_hidden_states = self.model(**model_kwargs)
...
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File "<eval_with_key>.1111", line 6, in forward
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     unified_attention_with_output = torch.ops.vllm.unified_attention_with_output(...)
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/attention/backends/flash_attn.py", line 903, in _forward_with_dcp
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     (dcp_context_out,) = current_workspace_manager().get_simultaneous(
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/worker/workspace.py", line 157, in _ensure_workspace_size
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     raise AssertionError(
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971] AssertionError: Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.

---

RuntimeError: Worker failed with error 'Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.', please check the stack trace above for the root cause
RAW_BUFFERClick to expand / collapse

Your current environment

<details> <summary>The output of <code>python collect_env.py</code></summary>
==============================
        System Info
==============================
OS                           : Ubuntu 22.04.4 LTS (x86_64)
GCC version                  : (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0
Clang version                : Could not collect
CMake version                : Could not collect
Libc version                 : glibc-2.35

==============================
       PyTorch Info
==============================
PyTorch version              : 2.9.0+cu128
Is debug build               : False
CUDA used to build PyTorch   : 12.8
ROCM used to build PyTorch   : N/A
XPU used to build PyTorch    : N/A

==============================
      Python Environment
==============================
Python version               : 3.13.9 | packaged by Anaconda, Inc. | (main, Oct 21 2025, 19:16:10) [GCC 11.2.0] (64-bit runtime)
Python platform              : Linux-5.15.0-94-generic-x86_64-with-glibc2.35

==============================
       CUDA / GPU Info
==============================
Is CUDA available            : True
CUDA runtime version         : 12.6.85
CUDA_MODULE_LOADING set to   :
GPU models and configuration :
GPU 0: NVIDIA H20-3e
GPU 1: NVIDIA H20-3e
GPU 2: NVIDIA H20-3e
GPU 3: NVIDIA H20-3e
GPU 4: NVIDIA H20-3e
GPU 5: NVIDIA H20-3e
GPU 6: NVIDIA H20-3e
GPU 7: NVIDIA H20-3e

Nvidia driver version        : 570.86.15
cuDNN version                : Could not collect
HIP runtime version          : N/A
MIOpen runtime version       : N/A
Is XNNPACK available         : True

==============================
          CPU Info
==============================
Architecture:                       x86_64
CPU op-mode(s):                     32-bit, 64-bit
Address sizes:                      52 bits physical, 57 bits virtual
Byte Order:                         Little Endian
CPU(s):                             192
On-line CPU(s) list:                0-191
Vendor ID:                          GenuineIntel
Model name:                         INTEL(R) XEON(R) PLATINUM 8558
CPU family:                         6
Model:                              207
Thread(s) per core:                 2
Core(s) per socket:                 48
Socket(s):                          2
Stepping:                           2
CPU max MHz:                        4000.0000
CPU min MHz:                        800.0000
BogoMIPS:                           4200.00
Flags:                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cat_l2 cdp_l3 invpcid_single intel_ppin cdp_l2 ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local split_lock_detect avx_vnni avx512_bf16 wbnoinvd dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req avx512vbmi umip pku ospke waitpkg avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq la57 rdpid bus_lock_detect cldemote movdiri movdir64b enqcmd fsrm md_clear serialize tsxldtrk pconfig arch_lbr amx_bf16 avx512_fp16 amx_tile amx_int8 flush_l1d arch_capabilities
Virtualization:                     VT-x
L1d cache:                          4.5 MiB (96 instances)
L1i cache:                          3 MiB (96 instances)
L2 cache:                           192 MiB (96 instances)
L3 cache:                           520 MiB (2 instances)
NUMA node(s):                       2
NUMA node0 CPU(s):                  0-47,96-143
NUMA node1 CPU(s):                  48-95,144-191
Vulnerability Gather data sampling: Not affected
Vulnerability Itlb multihit:        Not affected
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Not affected
Vulnerability Retbleed:             Not affected
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass:    Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Vulnerability Spectre v1:           Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; Enhanced IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence
Vulnerability Srbds:                Not affected
Vulnerability Tsx async abort:      Not affected

==============================
Versions of relevant libraries
==============================
[pip3] flashinfer-python==0.5.3
[pip3] numpy==2.2.6
[pip3] nvidia-cublas-cu12==12.8.4.1
[pip3] nvidia-cuda-cupti-cu12==12.8.90
[pip3] nvidia-cuda-nvrtc-cu12==12.8.93
[pip3] nvidia-cuda-runtime-cu12==12.8.90
[pip3] nvidia-cudnn-cu12==9.10.2.21
[pip3] nvidia-cudnn-frontend==1.16.0
[pip3] nvidia-cufft-cu12==11.3.3.83
[pip3] nvidia-cufile-cu12==1.13.1.3
[pip3] nvidia-curand-cu12==10.3.9.90
[pip3] nvidia-cusolver-cu12==11.7.3.90
[pip3] nvidia-cusparse-cu12==12.5.8.93
[pip3] nvidia-cusparselt-cu12==0.7.1
[pip3] nvidia-cutlass==4.2.0.0
[pip3] nvidia-cutlass-dsl==4.3.2
[pip3] nvidia-ml-py==13.580.82
[pip3] nvidia-nccl-cu12==2.27.5
[pip3] nvidia-nvjitlink-cu12==12.8.93
[pip3] nvidia-nvshmem-cu12==3.3.20
[pip3] nvidia-nvtx-cu12==12.8.90
[pip3] pyzmq==27.1.0
[pip3] torch==2.9.0
[pip3] torchaudio==2.9.0
[pip3] torchvision==0.24.0
[pip3] transformers==4.57.3
[pip3] triton==3.5.0
[conda] cuda-cccl_linux-64                   12.6.77          0                   nvidia
[conda] cuda-command-line-tools              12.6.3           0                   nvidia
[conda] cuda-compiler                        12.6.3           0                   nvidia
[conda] cuda-crt-dev_linux-64                12.6.85          0                   nvidia
[conda] cuda-crt-tools                       12.6.85          0                   nvidia
[conda] cuda-cudart                          12.6.77          0                   nvidia
[conda] cuda-cudart-dev                      12.6.77          0                   nvidia
[conda] cuda-cudart-dev_linux-64             12.6.77          0                   nvidia
[conda] cuda-cudart-static                   12.6.77          0                   nvidia
[conda] cuda-cudart-static_linux-64          12.6.77          0                   nvidia
[conda] cuda-cudart_linux-64                 12.6.77          0                   nvidia
[conda] cuda-cuobjdump                       12.6.77          0                   nvidia
[conda] cuda-cupti                           12.6.80          0                   nvidia
[conda] cuda-cupti-dev                       12.6.80          0                   nvidia
[conda] cuda-cuxxfilt                        12.6.77          0                   nvidia
[conda] cuda-driver-dev                      12.6.77          0                   nvidia
[conda] cuda-driver-dev_linux-64             12.6.77          0                   nvidia
[conda] cuda-gdb                             12.6.77          0                   nvidia
[conda] cuda-libraries                       12.6.3           0                   nvidia
[conda] cuda-libraries-dev                   12.6.3           0                   nvidia
[conda] cuda-nsight                          12.6.77          0                   nvidia
[conda] cuda-nvcc                            12.6.85          0                   nvidia
[conda] cuda-nvcc-dev_linux-64               12.6.85          0                   nvidia
[conda] cuda-nvcc-impl                       12.6.85          0                   nvidia
[conda] cuda-nvcc-tools                      12.6.85          0                   nvidia
[conda] cuda-nvcc_linux-64                   12.6.85          0                   nvidia
[conda] cuda-nvdisasm                        12.6.77          0                   nvidia
[conda] cuda-nvml-dev                        12.6.77          2                   nvidia
[conda] cuda-nvprof                          12.6.80          0                   nvidia
[conda] cuda-nvprune                         12.6.77          0                   nvidia
[conda] cuda-nvrtc                           12.6.85          0                   nvidia
[conda] cuda-nvrtc-dev                       12.6.85          0                   nvidia
[conda] cuda-nvtx                            12.6.77          0                   nvidia
[conda] cuda-nvvm-dev_linux-64               12.6.85          0                   nvidia
[conda] cuda-nvvm-impl                       12.6.85          0                   nvidia
[conda] cuda-nvvm-tools                      12.6.85          0                   nvidia
[conda] cuda-nvvp                            12.6.80          0                   nvidia
[conda] cuda-opencl                          12.6.77          0                   nvidia
[conda] cuda-opencl-dev                      12.6.77          0                   nvidia
[conda] cuda-profiler-api                    12.6.77          0                   nvidia
[conda] cuda-sanitizer-api                   12.6.77          0                   nvidia
[conda] cuda-toolkit                         12.6.3           0                   nvidia
[conda] cuda-tools                           12.6.3           0                   nvidia
[conda] cuda-visual-tools                    12.6.3           0                   nvidia
[conda] flashinfer-python                    0.5.3            pypi_0              pypi
[conda] gds-tools                            1.11.1.6         0                   nvidia
[conda] libcublas                            12.6.4.1         0                   nvidia
[conda] libcublas-dev                        12.6.4.1         0                   nvidia
[conda] libcufft                             11.3.0.4         0                   nvidia
[conda] libcufft-dev                         11.3.0.4         0                   nvidia
[conda] libcufile                            1.11.1.6         0                   nvidia
[conda] libcufile-dev                        1.11.1.6         0                   nvidia
[conda] libcurand                            10.3.7.77        0                   nvidia
[conda] libcurand-dev                        10.3.7.77        0                   nvidia
[conda] libcusolver                          11.7.1.2         0                   nvidia
[conda] libcusolver-dev                      11.7.1.2         0                   nvidia
[conda] libcusparse                          12.5.4.2         0                   nvidia
[conda] libcusparse-dev                      12.5.4.2         0                   nvidia
[conda] libnpp                               12.2.5.30        0                   nvidia
[conda] libnpp-dev                           12.2.5.30        0                   nvidia
[conda] libnvfatbin                          12.6.77          0                   nvidia
[conda] libnvfatbin-dev                      12.6.77          0                   nvidia
[conda] libnvjitlink                         12.6.85          0                   nvidia
[conda] libnvjitlink-dev                     12.6.85          0                   nvidia
[conda] libnvjpeg                            12.3.1.117       0                   nvidia
[conda] libnvjpeg-dev                        12.3.1.117       0                   nvidia
[conda] nsight-compute                       2024.3.2.3       0                   nvidia
[conda] numpy                                2.2.6            pypi_0              pypi
[conda] nvidia-cublas-cu12                   12.8.4.1         pypi_0              pypi
[conda] nvidia-cuda-cupti-cu12               12.8.90          pypi_0              pypi
[conda] nvidia-cuda-nvrtc-cu12               12.8.93          pypi_0              pypi
[conda] nvidia-cuda-runtime-cu12             12.8.90          pypi_0              pypi
[conda] nvidia-cudnn-cu12                    9.10.2.21        pypi_0              pypi
[conda] nvidia-cudnn-frontend                1.16.0           pypi_0              pypi
[conda] nvidia-cufft-cu12                    11.3.3.83        pypi_0              pypi
[conda] nvidia-cufile-cu12                   1.13.1.3         pypi_0              pypi
[conda] nvidia-curand-cu12                   10.3.9.90        pypi_0              pypi
[conda] nvidia-cusolver-cu12                 11.7.3.90        pypi_0              pypi
[conda] nvidia-cusparse-cu12                 12.5.8.93        pypi_0              pypi
[conda] nvidia-cusparselt-cu12               0.7.1            pypi_0              pypi
[conda] nvidia-cutlass                       4.2.0.0          pypi_0              pypi
[conda] nvidia-cutlass-dsl                   4.3.2            pypi_0              pypi
[conda] nvidia-ml-py                         13.580.82        pypi_0              pypi
[conda] nvidia-nccl-cu12                     2.27.5           pypi_0              pypi
[conda] nvidia-nvjitlink-cu12                12.8.93          pypi_0              pypi
[conda] nvidia-nvshmem-cu12                  3.3.20           pypi_0              pypi
[conda] nvidia-nvtx-cu12                     12.8.90          pypi_0              pypi
[conda] pyzmq                                27.1.0           pypi_0              pypi
[conda] torch                                2.9.0            pypi_0              pypi
[conda] torchaudio                           2.9.0            pypi_0              pypi
[conda] torchvision                          0.24.0           pypi_0              pypi
[conda] transformers                         4.57.3           pypi_0              pypi
[conda] triton                               3.5.0            pypi_0              pypi

==============================
         vLLM Info
==============================
ROCM Version                 : Could not collect
vLLM Version                 : 0.12.0
vLLM Build Flags:
  CUDA Archs: Not Set; ROCm: Disabled; XPU: Disabled
GPU Topology:
        GPU0    GPU1    GPU2    GPU3    GPU4    GPU5    GPU6    GPU7    NIC0    NIC1    NIC2    NIC3    NIC4    NIC5CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      NV18    NV18    NV18    NV18    NV18    NV18    NV18    PIX     NODE    NODE    NODE    SYS     SYS0-47,96-143      0               N/A
GPU1    NV18     X      NV18    NV18    NV18    NV18    NV18    NV18    PIX     NODE    NODE    NODE    SYS     SYS0-47,96-143      0               N/A
GPU2    NV18    NV18     X      NV18    NV18    NV18    NV18    NV18    NODE    NODE    NODE    PIX     SYS     SYS0-47,96-143      0               N/A
GPU3    NV18    NV18    NV18     X      NV18    NV18    NV18    NV18    NODE    NODE    NODE    PIX     SYS     SYS0-47,96-143      0               N/A
GPU4    NV18    NV18    NV18    NV18     X      NV18    NV18    NV18    SYS     SYS     SYS     SYS     PIX     NODE48-95,144-191   1               N/A
GPU5    NV18    NV18    NV18    NV18    NV18     X      NV18    NV18    SYS     SYS     SYS     SYS     PIX     NODE48-95,144-191   1               N/A
GPU6    NV18    NV18    NV18    NV18    NV18    NV18     X      NV18    SYS     SYS     SYS     SYS     NODE    PIX48-95,144-191    1               N/A
GPU7    NV18    NV18    NV18    NV18    NV18    NV18    NV18     X      SYS     SYS     SYS     SYS     NODE    PIX48-95,144-191    1               N/A
NIC0    PIX     PIX     NODE    NODE    SYS     SYS     SYS     SYS      X      NODE    NODE    NODE    SYS     SYS
NIC1    NODE    NODE    NODE    NODE    SYS     SYS     SYS     SYS     NODE     X      PIX     NODE    SYS     SYS
NIC2    NODE    NODE    NODE    NODE    SYS     SYS     SYS     SYS     NODE    PIX      X      NODE    SYS     SYS
NIC3    NODE    NODE    PIX     PIX     SYS     SYS     SYS     SYS     NODE    NODE    NODE     X      SYS     SYS
NIC4    SYS     SYS     SYS     SYS     PIX     PIX     NODE    NODE    SYS     SYS     SYS     SYS      X      NODE
NIC5    SYS     SYS     SYS     SYS     NODE    NODE    PIX     PIX     SYS     SYS     SYS     SYS     NODE     X

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

NIC Legend:

  NIC0: mlx5_0
  NIC1: mlx5_1
  NIC2: mlx5_2
  NIC3: mlx5_3
  NIC4: mlx5_4
  NIC5: mlx5_5

==============================
     Environment Variables
==============================
TORCHINDUCTOR_CACHE_DIR=/ssd2/cache/torchinductor/user1
PYTORCH_NVML_BASED_CUDA_CHECK=1
TORCHINDUCTOR_COMPILE_THREADS=1
</details>

🐛 Describe the bug

Describe the bug

When running vLLM V1 with both --decode-context-parallel-size > 1 and --speculative-config '{"method": "eagle3", ...}', the engine crashes during the first request at the speculative decoding phase. The error indicates that the temporary workspace required by DCP attention (_forward_with_dcp) has a size of 0.00 MB and is locked, preventing allocation.

To Reproduce

  1. Pull the image:

    docker pull vllm/vllm-openai:deepseekv4-cu130
  2. Run the server with the following command (on an 8-GPU host):

    docker run --rm -it --name vllm-kimi-k2.6 \
        --gpus all \
        --ipc=host \
        --ulimit memlock=-1 \
        --ulimit stack=67108864 \
        -e VLLM_MEMORY_PROFILER_ESTIMATE_CUDAGRAPHS=1 \
        -p 8000:8000 \
        -v /model_files:/model_files \
        vllm/vllm-openai:deepseekv4-cu130 \
        /model_files/kimi-k2.6 \
        --tensor-parallel-size 8 \
        --served-model-name /model_files/h20/Kimi-K2.5 \
        --compilation-config '{"pass_config": {"fuse_allreduce_rms": true}}' \
        --speculative-config '{"model": "/model_files/kimi-k2.6-eagle3", "method": "eagle3", "num_speculative_tokens": 3}' \
        --gpu-memory-utilization 0.90 \
        --max-num-batched-tokens 16384 \
        --mm-encoder-tp-mode data \
        --mm-processor-cache-type shm \
        --mm-processor-cache-gb 128 \
        --max-num-seqs 25 \
        --enable-chunked-prefill \
        --enable-prefix-caching \
        --host 0.0.0.0 \
        --port 8000 \
        --enable-auto-tool-choice \
        --trust-remote-code \
        --tool-call-parser kimi_k2 \
        --reasoning-parser kimi_k2 \
        --decode-context-parallel-size 8 \
        --safetensors-load-strategy prefetch
  3. Send any chat/completions request.

  4. The server crashes immediately during draft token proposal.

Expected behavior

The engine should successfully perform speculative decoding with EAGLE3 while DCP is enabled, or at least gracefully fall back if the combination is unsupported.

Actual behavior

All 8 worker processes (TP0..TP7) crash simultaneously with the following assertion:

AssertionError: Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.

Full traceback (excerpt)

The crash originates from the draft model forward inside the EAGLE3 proposer:

(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/worker/gpu_model_runner.py", line 4729, in propose_draft_token_ids
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     draft_token_ids = self.drafter.propose(
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/spec_decode/eagle.py", line 482, in propose
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     ret_hidden_states = self.model(**model_kwargs)
...
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File "<eval_with_key>.1111", line 6, in forward
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     unified_attention_with_output = torch.ops.vllm.unified_attention_with_output(...)
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/attention/backends/flash_attn.py", line 903, in _forward_with_dcp
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     (dcp_context_out,) = current_workspace_manager().get_simultaneous(
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]   File ".../vllm/v1/worker/workspace.py", line 157, in _ensure_workspace_size
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971]     raise AssertionError(
(Worker_TP4_DCP4 pid=1576) ERROR ... [multiproc_executor.py:971] AssertionError: Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.

Engine core then dies with:

RuntimeError: Worker failed with error 'Workspace is locked but allocation from 'flash_attn.py:903:_forward_with_dcp' requires 16.12 MB, current size is 0.00 MB. Workspace growth is not allowed after locking.', please check the stack trace above for the root cause

Environment

Note: The runtime environment is entirely provided by the Docker image. All software dependencies (vLLM, PyTorch, CUDA, etc.) are bundled inside the container.

  • Docker Image: vllm/vllm-openai:deepseekv4-cu130
  • Host GPU: 8 × NVIDIA H20-3e
  • CUDA Driver (host): 570.86.15

Additional context

  • The main model (kimi-k2.6) loads successfully and the API server starts.
  • The request reaches the engine (POST /v1/chat/completions HTTP/1.1" 200 OK appears right before the crash).
  • The crash only happens when both --decode-context-parallel-size 8 and --speculative-config ... eagle3 ... are present.

Possible cause

It appears the WorkspaceManager in vLLM V1 does not correctly pre-allocate or resize the DCP temporary workspace for the draft model's attention forward. By the time _forward_with_dcp is called inside the EAGLE3 drafter, the workspace is locked (likely after the main model's graph capture or first step) and its current size is 0, triggering the assertion.


Before submitting a new issue...

  • Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

extent analysis

TL;DR

The issue can be resolved by adjusting the workspace size allocation for the draft model's attention forward in the EAGLE3 drafter to prevent the workspace from being locked with a size of 0.00 MB.

Guidance

  1. Review Workspace Management: Investigate how the WorkspaceManager in vLLM V1 handles workspace allocation and locking, especially in the context of the draft model and EAGLE3 speculative decoding.
  2. Adjust Workspace Allocation: Modify the code to ensure that the workspace for the draft model's attention forward is properly pre-allocated or resized before it is locked, preventing the assertion error.
  3. Verify EAGLE3 Configuration: Double-check the --speculative-config and --decode-context-parallel-size settings to ensure they are compatible and correctly configured for the EAGLE3 method.
  4. Test with Modified Settings: After making adjustments, re-run the server with the modified settings and verify that the crash no longer occurs during speculative decoding.

Example

No specific code example can be provided without modifying the vLLM V1 source code, but the solution involves adjusting the workspace allocation logic in flash_attn.py or related modules to accommodate the draft model's requirements during EAGLE3 speculative decoding.

Notes

  • The fix requires understanding the internal workings of vLLM V1's workspace management and speculative decoding mechanisms.
  • The solution might involve adding checks or adjustments to the workspace size allocation based on the specific requirements of the draft model and EAGLE3 method.

Recommendation

Apply a workaround by adjusting the workspace allocation logic to prevent the workspace from being locked with an insufficient size, allowing the draft model's attention forward to proceed without crashing.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

The engine should successfully perform speculative decoding with EAGLE3 while DCP is enabled, or at least gracefully fall back if the combination is unsupported.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

vllm - 💡(How to fix) Fix [Bug]: Workspace allocation failure when combining Decode Context Parallelism (DCP) with EAGLE3 speculative decoding [1 participants]