Skip to content

[Benchmark] DeepSeek V4.1-Flash on an RTX 4090 Laptop 16 GB with 94 GiB RAM: the release engine package 0.1.52 (sm_89), IST-DAS 2.25 and 2.00 bpw - #4426

Closed
30crows wants to merge 1 commit into
Niko1221:mainfrom
30crows:community-rtx-4090-laptop-deepseek-v4.1
Closed

30crows wants to merge 1 commit into
Niko1221:mainfrom
30crows:community-rtx-4090-laptop-deepseek-v4.1

Conversation

@30crows

@30crows 30crows commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

Problem and result

DEEPSEEK41.md says that the engine packages have carried sm_89 code since 0.2.7, but that it was "compiled here but not run". This report runs the release package strata-dsv41 0.1.52 (0.1.52-linux-x86_64-cuda-cuda13, from the update feed, not a local build) on an RTX 40 card. The machine is an RTX 4090 Laptop GPU (16 GB) with an i9-13900HX and 94 GiB of RAM.

It ran without errors in every test of a night run (22:41 to 01:31), with prompts up to 250,000 tokens at a 262,144-token context.

Results (medians, 3 runs per test):

2.25 bpw default (Faster, DSpark auto) 2.25 Full quality (--experts 6) 2.25 DSpark on 2.00 bpw default
chat decode tok/s 13.6 11.2 14.5 14.9
agent decode tok/s 16.0 13.5 15.4 16.4
code with thinking, decode tok/s 16.2 13.7 15.9 17.3
prompt tok/s at 4K / 32K 436 / 800 387 / 755 392 / 787 463 / 833
  • Long prompts (2.25):
    • 128K: read at 685 tok/s, 187 s to the first token.
    • 250K: read at 664 tok/s, 377 s to the first token.
    • Decode is still 13.9 tok/s after the 250K prompt.
  • 2.00 bpw: 2-19% faster than 2.25, except the 250K prompt, which was 6% slower.
  • Full quality: costs 15-18% of decode speed on this machine.
  • DSpark forced on: 76% of the drafted tokens were accepted on code, but decode did not change. The quick tuner measured the drafter 31% slower in its short test and kept nothing.
  • --dspark auto: its "not loaded" decision held on this 16 GB card. This differs from the 48 GB RTX 4090 in [Engine] DeepSeek V4.1 engine (strata-dsv41) is refused on an RTX 4090: the prebuilt packages carry sm_86/sm_120 only, and the docs do not say RTX 40 is unsupported #3935, where --dspark on doubled decode.
  • Repeat: the default 2.25 run at the end of the night came within 4% of the first run.

Related discussion

Approach

Results only. The PR adds one folder: bench/results/2026-10-27-community-rtx-4090-laptop-deepseek-v4.1/. It holds the README, per-request data, sanitized configs, engine logs, telemetry summaries and the scripts. There is no engine, docs or index change; I left the COMMUNITY.md row to the maintainers, as before.

Tests:

  • tools/strata_bench.py --long, unchanged.
  • Three coding requests with thinking on.
  • The 2026-09-30 long-prompt script at 4K / 32K / 128K / 250K.

The long-prompt script needed a patch for DeepSeek, included in the folder. It now uses the pack's own pre-tokenizer and special-token ids, as serve/server.py does, and counts the start token that the engine adds. Without the patch it built a 3,098-token prompt when asked for 4,096.

Validation

Passed:

  • Setup: ./setup.sh --setup --yes --family deepseek41 --model IST-DAS-2.25bpw --context 262144 --no-start, and the same for IST-DAS-2.00bpw. Both ran on Strata 0.2.7 (main 5e8a4cc), Gentoo, driver 615.78.08. Setup fetched the package, checked the downloads, packed the models and passed its test question.
  • Engine: cuobjdump --list-elf on the installed strata-dsv41 lists sm_86, sm_89 and sm_120. Every server started and reported ready in 12-14 s.
  • Benchmark runs: every run of all 5 strata_bench suites, all 5 coding sets and both long-prompt sweeps (24 requests) finished with exit 0. No request failed.
  • Prompt sizes: with the patch, the long-prompt script's prompts matched the server's token count to within one token.
  • Answer checks:
    • The merge-intervals answers pass their own tests in all 5 runs.
    • The shell scripts pass sh -n. 4 of 5 list the files in a folder with spaces in its names correctly; one also prints a wc "total" line.
    • At 4K, 128K and 250K, the 2.25 answers named the last function of the prompt correctly.

Failed:

  • LRU-cache task: the 2,048-token cap cut off the answer in all four 2.25 runs, because thinking used most of the budget. That is a flaw in my test, not an engine failure; it is reported as such in the README.

Not run:

  • the 1.75 bpw set, 2.00 in Full quality, and --dspark on with 2.00
  • strata bench run (its protocol is for Qwen only)
  • a needle or recall test at depth, and thinking on with long prompts
  • concurrent requests, pictures, battery power, Windows, and a cold page cache after a reboot
  • any comparison with another build: the drift check repeats the same build

Limits

This is one machine on one night, with synthetic prompts. There is no measurement of answer quality between Faster and Full quality: three coding tasks are too few.

The speed depends heavily on RAM:

  • The RAM store held 54 GB of experts, and the page cache held much of the rest.
  • During the 250K prompts on 2.25, available RAM fell to 13.6 GiB and 4.8 GiB went to zram.
  • A machine with less RAM, or with a desktop and browser open, will likely be slower. That was not measured.

No graphical session was running during the tests.

🤖 Generated with Claude Code

… V4.1-Flash IST-DAS 2.25 and 2.00 bpw, engine package 0.1.52

Lenovo Legion 82WQ (RTX 4090 Laptop GPU, sm_89, i9-13900HX, 2x48 GB
DDR5-5200), Gentoo, driver 615.78.08, Strata 0.2.7 (5e8a4cc) with the
release DeepSeek engine package 0.1.52 from the update feed: the
package's sm_89 code on an RTX 40 card, which DEEPSEEK41.md lists as not
yet run. 262,144-token context, no graphical session.

2.25 bpw default (Faster, DSpark auto): decode 13.6 chat / 16.0 agent /
16.2 code with thinking tok/s, prompts 436 / 759 / 800 tok/s at 4K /
16K / 32K, 250K prompt at 664 tok/s with decode still 13.9. Full quality
(--experts 6) costs 15-18% decode; DSpark forced on: 76% acceptance on
code but no decode gain (the tuner measured it 31% slower, kept nothing).
2.00 bpw 2-19% faster except the 250K prompt (-6%). Drift check within 4%.
Three runs per test, tools/strata_bench.py --long plus the 2026-09-30
long-prompt script (patched for DeepSeek's tokenizer), coding answers
with thinking, telemetry. Results only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Niko1221

Copy link
Copy Markdown
Owner

Thank you for measuring this and writing it up. We are building a Strata website with a page for community benchmarks, and results like these will be added there when it launches, so we are closing this pull request here; the numbers are not lost. If your numbers change with a new version, you are welcome to send them again.

@Niko1221 Niko1221 closed this Oct 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants