fraserprice/DeepSeek-V4-Flash-DSpark

Model

DeepSeek-V4-Flash-DSpark

9

7 commits

3 linked in READMEs

updated Jul 1, 2026

See the code

README

DeepSeek-V4-Flash-DSpark

Stock DeepSeek-V4-Flash with DSpark speculative decoding. Faster than MTP on 2-4x RTX Pro 6000. By Fraser Price.

The official DeepSeek-V4-Flash (FP8 weights + FP4 experts, unmodified) with DeepSeek's DSpark draft module bolted on. DSpark (from DeepSpec) is block-wise speculative decoding: it drafts several tokens per step through a small Markov head, so single-stream decode is ~1.2-1.4x faster than the model's stock MTP at identical quality (speculative decoding is lossless). It runs on a Blackwell / CUDA-13.2 vLLM image that ships the dspark speculative method (voipmonitor/vllm:eldritch-enlightenment-v2226f26-b12x15cd38c-cu132-20260629), the image from local-inference-lab/rtx6kpro.

Update

The serving image has moved from the original fraserpricee/vllm:dspark-cu132-20260627 to the local-inference-lab vLLM build (voipmonitor/vllm:eldritch-enlightenment-v2226f26-b12x15cd38c-cu132-20260629) — a more performant DSpark + sparse-MLA implementation on Blackwell. All credits to them! The performance numbers below were measured on this V2 build, weights are the same.

RepoWhat
deepseek-ai/DeepSeek-V4-Flashthe official base model
DeepSeek-V4-Flash-DSparkthis repo (stock + DSpark)
DeepSeek-V4-Flash-Abliterated-DSparkabliterated (uncensored) + DSpark

Quick start

Needs Docker with the NVIDIA Container Toolkit and 2-4 GPUs (see Hardware).

curl -fsSL https://huggingface.co/fraserprice/DeepSeek-V4-Flash-DSpark/resolve/main/run.sh -o run.sh && bash run.sh

That one command grabs the launcher, downloads the weights (~167 GB) into your Hugging Face cache, pulls the inference image, and serves an OpenAI-compatible API on http://localhost:8000/v1. No other files or arguments needed. On 4 GPUs:

GPUS=0,1,2,3 TP=4 bash run.sh

Everything is overridable by env var:

VariableDefaultMeaning
GPUS0,1GPU indices (comma-separated)
TP2Tensor-parallel size; set to the number of GPUs
DSPARK_TOKENS5DSpark draft tokens per step
PORT8000API port
MAX_MODEL_LEN262144Context length
GPU_MEM_UTIL0.92Fraction of VRAM to use
HF_REPOfraserprice/DeepSeek-V4-Flash-DSparkrepo to download
MODEL_DIR(HF cache)serve a local dir instead of downloading
SERVED_NAMEDeepSeek-V4-Flash-DSparkAPI model name
IMAGE(pinned DSpark image)inference container

Hardware

Tuned for NVIDIA RTX Pro 6000 Blackwell (96 GB, sm_120). Needs roughly 180 GB total VRAM for weights + DSpark module + KV cache at long context, split across GPUs by tensor parallelism.

SetupWorks?
2 x RTX Pro 6000 (96 GB), TP=2✅ reference config
4 x RTX Pro 6000, TP=4✅ more KV headroom / throughput
< ~180 GB total VRAM❌ won't fit

The serving image targets Blackwell (sm_120) / CUDA 13.2 and adds the dspark speculative method to vLLM. See local-inference-lab/rtx6kpro for the image source.

Performance

Measured on RTX Pro 6000 Blackwell (PCIe 5.0), FP8 weights + FP8 KV cache, gpu_memory_utilization=0.92, DSpark num_speculative_tokens=5, 256 generated tokens/request. PP is prefill throughput (tok/s); TG is per-request decode throughput (tok/s); total is aggregate throughput (tok/s) across concurrent requests. MTP TG is the base model's shipped single-layer-MTP decode for reference; Decode ↑ is DSpark's gain over it.

These numbers were measured on the abliterated DSpark twin and apply identically here: same architecture, precision, and DSpark module. Abliteration is a rank-3 projection on the base weights that does not change compute.

Latency

GPUspromptconcTTFT p50ITL p50E2E p50
21,0001155 ms15.6 ms1.34 s
21,0003435 ms23.1 ms2.04 s
210,00011,232 ms15.9 ms2.32 s
210,00032,495 ms23.8 ms5.30 s
2100,000114,568 ms16.4 ms15.71 s
2100,000329,078 ms26.1 ms44.77 s
41,0001127 ms11.9 ms0.96 s
41,0003259 ms16.3 ms1.52 s
410,0001983 ms12.0 ms1.87 s
410,00032,229 ms16.9 ms4.06 s
4100,000112,772 ms12.5 ms13.59 s
4100,000326,698 ms18.9 ms40.11 s

Throughput (tok/s)

GPUspromptconcPPMTP TGDSpark TGDecode ↑total
21,00018,080190.9224.71.18×1,160
21,00038,377138.4152.51.10×2,120
210,000110,081191.5239.51.25×5,469
210,000310,05090.3106.61.18×7,046
2100,00018,525185.4247.11.33×7,965
2100,00038,58560.467.11.11×8,320
41,00019,769233.3322.71.38×1,605
41,000310,578181.9212.81.17×2,927
410,000112,645234.5314.31.34×6,984
410,000312,642115.0148.31.29×9,122
4100,00019,734232.8335.81.44×9,194
4100,00039,50774.792.71.24×9,278

~1.2-1.4x faster single-stream decode than the base model's shipped MTP, at the same (lossless) quality.

Credits

License

MIT, inheriting from the base model.


Built by Fraser Price, @fraserpricee. Found this useful? A follow is appreciated.

8-bit
blackwell
deepseek
deepseek_v4
dspark
rtx-pro-6000
safetensors
speculative-decoding
vllm

fraserprice/DeepSeek-V4-Flash-DSpark

Model

DeepSeek-V4-Flash-DSpark

9

7 commits

3 linked in READMEs

updated Jul 1, 2026

See the code

README

DeepSeek-V4-Flash-DSpark

Stock DeepSeek-V4-Flash with DSpark speculative decoding. Faster than MTP on 2-4x RTX Pro 6000. By Fraser Price.

The official DeepSeek-V4-Flash (FP8 weights + FP4 experts, unmodified) with DeepSeek's DSpark draft module bolted on. DSpark (from DeepSpec) is block-wise speculative decoding: it drafts several tokens per step through a small Markov head, so single-stream decode is ~1.2-1.4x faster than the model's stock MTP at identical quality (speculative decoding is lossless). It runs on a Blackwell / CUDA-13.2 vLLM image that ships the dspark speculative method (voipmonitor/vllm:eldritch-enlightenment-v2226f26-b12x15cd38c-cu132-20260629), the image from local-inference-lab/rtx6kpro.

Update

The serving image has moved from the original fraserpricee/vllm:dspark-cu132-20260627 to the local-inference-lab vLLM build (voipmonitor/vllm:eldritch-enlightenment-v2226f26-b12x15cd38c-cu132-20260629) — a more performant DSpark + sparse-MLA implementation on Blackwell. All credits to them! The performance numbers below were measured on this V2 build, weights are the same.

RepoWhat
deepseek-ai/DeepSeek-V4-Flashthe official base model
DeepSeek-V4-Flash-DSparkthis repo (stock + DSpark)
DeepSeek-V4-Flash-Abliterated-DSparkabliterated (uncensored) + DSpark

Quick start

Needs Docker with the NVIDIA Container Toolkit and 2-4 GPUs (see Hardware).

curl -fsSL https://huggingface.co/fraserprice/DeepSeek-V4-Flash-DSpark/resolve/main/run.sh -o run.sh && bash run.sh

That one command grabs the launcher, downloads the weights (~167 GB) into your Hugging Face cache, pulls the inference image, and serves an OpenAI-compatible API on http://localhost:8000/v1. No other files or arguments needed. On 4 GPUs:

GPUS=0,1,2,3 TP=4 bash run.sh

Everything is overridable by env var:

VariableDefaultMeaning
GPUS0,1GPU indices (comma-separated)
TP2Tensor-parallel size; set to the number of GPUs
DSPARK_TOKENS5DSpark draft tokens per step
PORT8000API port
MAX_MODEL_LEN262144Context length
GPU_MEM_UTIL0.92Fraction of VRAM to use
HF_REPOfraserprice/DeepSeek-V4-Flash-DSparkrepo to download
MODEL_DIR(HF cache)serve a local dir instead of downloading
SERVED_NAMEDeepSeek-V4-Flash-DSparkAPI model name
IMAGE(pinned DSpark image)inference container

Hardware

Tuned for NVIDIA RTX Pro 6000 Blackwell (96 GB, sm_120). Needs roughly 180 GB total VRAM for weights + DSpark module + KV cache at long context, split across GPUs by tensor parallelism.

SetupWorks?
2 x RTX Pro 6000 (96 GB), TP=2✅ reference config
4 x RTX Pro 6000, TP=4✅ more KV headroom / throughput
< ~180 GB total VRAM❌ won't fit

The serving image targets Blackwell (sm_120) / CUDA 13.2 and adds the dspark speculative method to vLLM. See local-inference-lab/rtx6kpro for the image source.

Performance

Measured on RTX Pro 6000 Blackwell (PCIe 5.0), FP8 weights + FP8 KV cache, gpu_memory_utilization=0.92, DSpark num_speculative_tokens=5, 256 generated tokens/request. PP is prefill throughput (tok/s); TG is per-request decode throughput (tok/s); total is aggregate throughput (tok/s) across concurrent requests. MTP TG is the base model's shipped single-layer-MTP decode for reference; Decode ↑ is DSpark's gain over it.

These numbers were measured on the abliterated DSpark twin and apply identically here: same architecture, precision, and DSpark module. Abliteration is a rank-3 projection on the base weights that does not change compute.

Latency

GPUspromptconcTTFT p50ITL p50E2E p50
21,0001155 ms15.6 ms1.34 s
21,0003435 ms23.1 ms2.04 s
210,00011,232 ms15.9 ms2.32 s
210,00032,495 ms23.8 ms5.30 s
2100,000114,568 ms16.4 ms15.71 s
2100,000329,078 ms26.1 ms44.77 s
41,0001127 ms11.9 ms0.96 s
41,0003259 ms16.3 ms1.52 s
410,0001983 ms12.0 ms1.87 s
410,00032,229 ms16.9 ms4.06 s
4100,000112,772 ms12.5 ms13.59 s
4100,000326,698 ms18.9 ms40.11 s

Throughput (tok/s)

GPUspromptconcPPMTP TGDSpark TGDecode ↑total
21,00018,080190.9224.71.18×1,160
21,00038,377138.4152.51.10×2,120
210,000110,081191.5239.51.25×5,469
210,000310,05090.3106.61.18×7,046
2100,00018,525185.4247.11.33×7,965
2100,00038,58560.467.11.11×8,320
41,00019,769233.3322.71.38×1,605
41,000310,578181.9212.81.17×2,927
410,000112,645234.5314.31.34×6,984
410,000312,642115.0148.31.29×9,122
4100,00019,734232.8335.81.44×9,194
4100,00039,50774.792.71.24×9,278

~1.2-1.4x faster single-stream decode than the base model's shipped MTP, at the same (lossless) quality.

Credits

License

MIT, inheriting from the base model.


Built by Fraser Price, @fraserpricee. Found this useful? A follow is appreciated.

8-bit
blackwell
deepseek
deepseek_v4
dspark
rtx-pro-6000
safetensors
speculative-decoding
vllm