【SGLang】4090 48G魔改 部署 Qwen3.5-27B-FP8&35B A3B 一些心得经验分享。
- 内容介绍
- 文章标签
- 相关推荐
先介绍环境:
4090 48G
i5 13600k
ddr4 32Gx4
win11 LTSC
WSL2 Ubuntu22.04
目前性能结论(个人感受):
4并发,单路50-60tok/s,kvcache fp8 310k缓存池子,显存总占用~46G。
主要使用环境openclaw、opencode
工具tools遵循度完美,长任务执行完美。
不建议使用社区微调的opus、gguf、或者其他非官方版本。(我全踩过,都没有官方的好使!!!)
长时间使用无任何断流、tools调用出错等情况出现。
————————————————————————————————————
SGLang 部署在WSL2 Ubuntu22.04中(后续为了简化,我只写WSL2)。
虚拟环境部署比docker容器部署在prefill阶段高10%性能。(如果为了省事,直接docker)
1.安装指令
pip install --upgrade pip
pip install uv
# 创建虚拟环境
uv venv sglang-env
source sglang-env/bin/activate
#cuda130 pytorch安装
uv pip install torch==2.10.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130
#安装sglang
uv pip install sglang
uv pip install "https://github.com/sgl-project/whl/releases/download/v0.4.0/sglang_kernel-0.4.0+cu130-cp310-abi3-manylinux2014_x86_64.whl"
sglang官方安装指南 SGlang官方安装指南
————————————————————————————————————
HuggingFace:Qwen3.5-27B-FP8
小Tip:不一定对所有网络有效
奉天联通:
使用huggingface cli进行下载,可以在开梯子拉取模型后,将梯子切回直联,能达到满速down 模型的速度。
具体安装方法可去搜索一下。
要记得装hf-xet
完事在cli中只要输入:
hf download Qwen/Qwen3.5-27B-FP8 --local-dir F:\下载\huggingface\Qwen/Qwen3.5-27B-FP8
拉取进度后直接改直联,享受满速down。
————————————————————————————————————
2.启动参数
#这个路径改为你虚拟环境的路径
readonly SGLANG_VENV="/root/sglang-env"
#将模型放置在wsl空间内,加载速度更快
readonly MODEL_PATH="/root/LLM/Qwen3.5-27B-FP8"
readonly SERVED_MODEL_NAME="Qwen3.5-27B-FP8"
readonly HOST="0.0.0.0"
readonly PORT="8778"
# Cache directories 可设可不设,我测试用的
readonly HF_HOME="/root/.cache/huggingface"
readonly TRITON_CACHE_DIR="/root/sglang_cache/triton/cache"
readonly TORCHINDUCTOR_CACHE_DIR="/root/sglang_cache/torch_compile"
readonly FLASH_ATTENTION_CUTE_CACHE_DIR="/root/sglang_cache/flash_attn_cute_cache"
# Runtime environment
export PYTORCH_ALLOC_CONF="expandable_segments:True"
export CUDA_DEVICE_ORDER="PCI_BUS_ID"
export CUDA_VISIBLE_DEVICES="0"
export TORCHINDUCTOR_CACHE_DIR
export TRITON_CACHE_DIR
export FLASH_ATTENTION_CUTE_DSL_CACHE_ENABLED="1"
export FLASH_ATTENTION_CUTE_DSL_CACHE_DIR="${FLASH_ATTENTION_CUTE_CACHE_DIR}"
# xxxxx改为你自己的api key,不填也行
export HF_TOKEN="${HF_TOKEN:-xxxxxxxxxxxx}"
SGLANG_ARGS=(
--model-path "${MODEL_PATH}"
--served-model-name "${SERVED_MODEL_NAME}"
--host "${HOST}"
--port "${PORT}"
--tensor-parallel-size 1
--trust-remote-code
--attention-backend flashinfer
--reasoning-parser qwen3
--tool-call-parser qwen3_coder
--kv-cache-dtype fp8_e4m3
--max-running-requests 4
# 这里指分配给模型+上下文的空间占比0.89等于89%,这里属于微调参数,大了其他服务启动时候oom,小了模型+上下文设置不够启动不起来。
--mem-fraction-static 0.89
--mamba-scheduler-strategy extra_buffer
--mamba-backend flashinfer
--page-size 8
--enable-dynamic-chunking
--schedule-policy lpm
--schedule-conservativeness 0.5
--stream-interval 1
--chunked-prefill-size 4096
--speculative-algorithm NEXTN
--speculative-num-steps 3
--speculative-eagle-topk 1
--speculative-num-draft-tokens 4
--radix-eviction-policy lfu
--mamba-ssm-dtype bfloat16
#这个参数吃非常大的显存,默认是0.9,支持100路并发,如果内存还吃紧,改0.1也无所谓,0.1都支持6路并发。
--mamba-full-memory-ratio 0.2
--cuda-graph-max-bs 8
--num-continuous-decode-steps 2
--prefill-max-requests 4
)
所有参数源于官方文档:sglang官方文档
可将每个参数复制到文档中搜索有详解。更简单的方式是丢给龙虾(或者其他agent)让它帮你翻译。
————————————————————————————————————
3.实测性能(偏主观)
启动时长(热重启)–45秒,冷启动会久一些。模型需要加载进内存,后再进入显存,以及乱七八糟初始化。
image677×144 7 KB
image597×110 5.13 KB
显存占用情况:
image414×444 8.53 KB
首次对话prefill到Decode性能
image1211×488 36.2 KB
mamba前缀缓存命中表现非常完美:
image1201×467 37 KB
玩虾和opencode的时候,体验感非常的好,长任务多轮对话,秒响应。
我不会什么压测,或者什么其他的专业测试工具。欢迎大佬指正、指点!
附上脚本,方便快速启动和调参。
启动脚本.zip (2.0 KB)
食用方法:改conf.sh中的虚拟环境路径、以及模型路径
然后./start-sglang-qwen35-full.sh即可。
补充内容:
该配置同样适用于35B-A3B-FP8,但是需要把投机预测(MTP)关闭,因为35B-Moe本身的性能已经非常强了,没有必要再上这个,反而会因为吃资源出现性能拖累。
注释掉以下参数:
# --speculative-algorithm NEXTN
# --speculative-num-steps 3
# --speculative-eagle-topk 1
# --speculative-num-draft-tokens 4
更换模型路径,其他保持不变。
35B智商没有27B高,贵在神速,我用它打STS2(杀戮尖塔2)还不错,调教了一天,最高战绩27层。(用的开源mcp框架,有兴趣后续可以开贴一起玩。)
引用一下水贴,有兴趣可以看一下哈哈:【焦虑】想做点社区贡献,但是又焦虑内耗。
网友解答:--【壹】--:
感谢佬友分享,我公司刚刚有4块闲置T4部署来玩玩
--【贰】--:
谢谢佬,我们也近期在准备部署本地的模型。4张4090 24G的,看了看这个显存情况来说,计划部署千问3.5-122B-A10B-GPTQ-Int4 来用。27B的总感觉参数少了点,96G的总显存,跑几个27B的感觉差点意思
--【叁】--:
感谢佬友分享
--【肆】--:
佬友,这个显存占用是咋显示的,是手动计算的吗
--【伍】--:
5090x2部署方案(Linux CUDA 12.9 容器环境)
export SGLANG_USE_MODELSCOPE=1
export SGLANG_ENABLE_SPEC_V2=1
export SGLANG_MAMBA_CONV_DTYPE=float16
python -m sglang.launch_server \
--model-path "Qwen/Qwen3.5-35B-A3B-GPTQ-Int4" \
--served-model-name "qwen3.5-35b" \
--tp 2 \
--dtype float16 \
--quantization moe_wna16 \
--context-length 263144 \
--mem-fraction-static 0.80 \
--max-running-requests 32 \
--chunked-prefill-size 16384 \
--mamba-scheduler-strategy extra_buffer \
--enable-flashinfer-allreduce-fusion \
--speculative-algorithm EAGLE \
--speculative-eagle-topk 1 \
--speculative-num-steps 3 \
--speculative-num-draft-tokens 4 \
--reasoning-parser qwen3 \
--tool-call-parser qwen3_coder \
--grammar-backend xgrammar \
--enable-custom-logit-processor \
--enable-cache-report \
--enable-metrics \
--host 0.0.0.0 \
--port 20080 \
压测:
| 输入长度 | 输出长度 | 并发数 | ITPS | OTPS |
|---|---|---|---|---|
| 1k | 1k | 1 | 4460 | 230 |
| 25k | 1k | 32 | 13978 | 916 |
| 50k | 1k | 16 | 17933 | 588 |
| 100k | 1k | 8 | 13508 | 248 |
| 200k | 1k | 4 | 11456 | 201 |
--【陆】--:
我现在没怎么关注,但是老店问题都不大,如果有机房隔离噪音就直接上涡轮卡,如果没有办法隔离噪音,那就要想办法改水冷。
这类卡现在就怕二次翻新,因为毕竟出来1年多了。当初第一批卡又很有可能回去又翻了一圈回来了。选老店有个好处就是能坚挺一年,当然如果你能直接线下更好。更稳妥。
我当时心比较大,到手没几个月,自己研究改水冷,还被坑了几次,硬是没把卡整报废。
--【柒】--:
25年1月,是比较早吃螃蟹的人了。当时23k币入的,我当时在b站做了个评测视频,然后拉了个群,很多买的朋友都在里面,我目前得知出问题返修的卡也就2张,我自己这张服役一年多,没啥事。
另外我自己改了水冷,主要是原卡涡轮噪音太大了,不适合家用。
改水冷以后,基本上满载也就65°,除了GPU,显存散热也要照顾到。
反正我觉得挺香的,当时有一批人入了4090D 48G的,我觉得更香,差了5k好像。
--【捌】--:
买了一年没掉价哈哈,我记得最低价的时候20k都有拿到的,正经公司肯定不太信任魔改,但是对于性价比来说,这卡无敌。改水冷以后非常抗造。而且保修还有B站张哥,不怕
--【玖】--:
佬 你买的魔改的48G花了多少钱?稳定不用的,会不会有啥暗病,我现在感觉24G显存单卡远远不够
--【拾】--:
顺带贴一个issue: [Bug] custom_logit_processor is skipped in SPEC_V2 verify steps · Issue #21724 · sgl-project/sglang · GitHub
--【拾壹】--:
你其实可以都测一下,有时候性能不代表体验。但是122B的吞吐一定是比27B强的。
我是榨干了自己的单卡性能,要不是有公益服,让我没有那么执着本地,不然我高低又搞一张48G。哈哈,我非常想要上122B(397B要升级太多,够不上)
--【拾贰】--:
你们真厉害,手里有那么多好货
--【拾叁】--:
35b没必要开mtp,意义不大。所以v2也不是必选项。
另外你如果用得上32并发的话,我也建议你把mamba ratio调小,0.5即可,这玩意占了大量显存,你改完以后会发现多了很多显存,给上下文不香吗。
--【拾肆】--:
96GB 显存可以跑 Qwen3.5-122B-A10B-GPTQ-Int4,官方的可能会稍微多占些显存,资源需要多些
--【拾伍】--:
复制启动log,给ai,让它列的,所以我用的截图(谨记社区准则 )
--【拾陆】--:
谢谢大佬分享
--【拾柒】--:
两万三 48G显存 也是香的不行了
现在魔改的不敢用了,主要是公司场景用
--【拾捌】--:
还有卖的渠道不,我当个备选方案~佬
--【拾玖】--:
目前我这里部署,max batch token在550k左右,反正是够用的。
我这边部署是多用户环境,吞吐量比较重要,mtp基本上是刚需。
先介绍环境:
4090 48G
i5 13600k
ddr4 32Gx4
win11 LTSC
WSL2 Ubuntu22.04
目前性能结论(个人感受):
4并发,单路50-60tok/s,kvcache fp8 310k缓存池子,显存总占用~46G。
主要使用环境openclaw、opencode
工具tools遵循度完美,长任务执行完美。
不建议使用社区微调的opus、gguf、或者其他非官方版本。(我全踩过,都没有官方的好使!!!)
长时间使用无任何断流、tools调用出错等情况出现。
————————————————————————————————————
SGLang 部署在WSL2 Ubuntu22.04中(后续为了简化,我只写WSL2)。
虚拟环境部署比docker容器部署在prefill阶段高10%性能。(如果为了省事,直接docker)
1.安装指令
pip install --upgrade pip
pip install uv
# 创建虚拟环境
uv venv sglang-env
source sglang-env/bin/activate
#cuda130 pytorch安装
uv pip install torch==2.10.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130
#安装sglang
uv pip install sglang
uv pip install "https://github.com/sgl-project/whl/releases/download/v0.4.0/sglang_kernel-0.4.0+cu130-cp310-abi3-manylinux2014_x86_64.whl"
sglang官方安装指南 SGlang官方安装指南
————————————————————————————————————
HuggingFace:Qwen3.5-27B-FP8
小Tip:不一定对所有网络有效
奉天联通:
使用huggingface cli进行下载,可以在开梯子拉取模型后,将梯子切回直联,能达到满速down 模型的速度。
具体安装方法可去搜索一下。
要记得装hf-xet
完事在cli中只要输入:
hf download Qwen/Qwen3.5-27B-FP8 --local-dir F:\下载\huggingface\Qwen/Qwen3.5-27B-FP8
拉取进度后直接改直联,享受满速down。
————————————————————————————————————
2.启动参数
#这个路径改为你虚拟环境的路径
readonly SGLANG_VENV="/root/sglang-env"
#将模型放置在wsl空间内,加载速度更快
readonly MODEL_PATH="/root/LLM/Qwen3.5-27B-FP8"
readonly SERVED_MODEL_NAME="Qwen3.5-27B-FP8"
readonly HOST="0.0.0.0"
readonly PORT="8778"
# Cache directories 可设可不设,我测试用的
readonly HF_HOME="/root/.cache/huggingface"
readonly TRITON_CACHE_DIR="/root/sglang_cache/triton/cache"
readonly TORCHINDUCTOR_CACHE_DIR="/root/sglang_cache/torch_compile"
readonly FLASH_ATTENTION_CUTE_CACHE_DIR="/root/sglang_cache/flash_attn_cute_cache"
# Runtime environment
export PYTORCH_ALLOC_CONF="expandable_segments:True"
export CUDA_DEVICE_ORDER="PCI_BUS_ID"
export CUDA_VISIBLE_DEVICES="0"
export TORCHINDUCTOR_CACHE_DIR
export TRITON_CACHE_DIR
export FLASH_ATTENTION_CUTE_DSL_CACHE_ENABLED="1"
export FLASH_ATTENTION_CUTE_DSL_CACHE_DIR="${FLASH_ATTENTION_CUTE_CACHE_DIR}"
# xxxxx改为你自己的api key,不填也行
export HF_TOKEN="${HF_TOKEN:-xxxxxxxxxxxx}"
SGLANG_ARGS=(
--model-path "${MODEL_PATH}"
--served-model-name "${SERVED_MODEL_NAME}"
--host "${HOST}"
--port "${PORT}"
--tensor-parallel-size 1
--trust-remote-code
--attention-backend flashinfer
--reasoning-parser qwen3
--tool-call-parser qwen3_coder
--kv-cache-dtype fp8_e4m3
--max-running-requests 4
# 这里指分配给模型+上下文的空间占比0.89等于89%,这里属于微调参数,大了其他服务启动时候oom,小了模型+上下文设置不够启动不起来。
--mem-fraction-static 0.89
--mamba-scheduler-strategy extra_buffer
--mamba-backend flashinfer
--page-size 8
--enable-dynamic-chunking
--schedule-policy lpm
--schedule-conservativeness 0.5
--stream-interval 1
--chunked-prefill-size 4096
--speculative-algorithm NEXTN
--speculative-num-steps 3
--speculative-eagle-topk 1
--speculative-num-draft-tokens 4
--radix-eviction-policy lfu
--mamba-ssm-dtype bfloat16
#这个参数吃非常大的显存,默认是0.9,支持100路并发,如果内存还吃紧,改0.1也无所谓,0.1都支持6路并发。
--mamba-full-memory-ratio 0.2
--cuda-graph-max-bs 8
--num-continuous-decode-steps 2
--prefill-max-requests 4
)
所有参数源于官方文档:sglang官方文档
可将每个参数复制到文档中搜索有详解。更简单的方式是丢给龙虾(或者其他agent)让它帮你翻译。
————————————————————————————————————
3.实测性能(偏主观)
启动时长(热重启)–45秒,冷启动会久一些。模型需要加载进内存,后再进入显存,以及乱七八糟初始化。
image677×144 7 KB
image597×110 5.13 KB
显存占用情况:
image414×444 8.53 KB
首次对话prefill到Decode性能
image1211×488 36.2 KB
mamba前缀缓存命中表现非常完美:
image1201×467 37 KB
玩虾和opencode的时候,体验感非常的好,长任务多轮对话,秒响应。
我不会什么压测,或者什么其他的专业测试工具。欢迎大佬指正、指点!
附上脚本,方便快速启动和调参。
启动脚本.zip (2.0 KB)
食用方法:改conf.sh中的虚拟环境路径、以及模型路径
然后./start-sglang-qwen35-full.sh即可。
补充内容:
该配置同样适用于35B-A3B-FP8,但是需要把投机预测(MTP)关闭,因为35B-Moe本身的性能已经非常强了,没有必要再上这个,反而会因为吃资源出现性能拖累。
注释掉以下参数:
# --speculative-algorithm NEXTN
# --speculative-num-steps 3
# --speculative-eagle-topk 1
# --speculative-num-draft-tokens 4
更换模型路径,其他保持不变。
35B智商没有27B高,贵在神速,我用它打STS2(杀戮尖塔2)还不错,调教了一天,最高战绩27层。(用的开源mcp框架,有兴趣后续可以开贴一起玩。)
引用一下水贴,有兴趣可以看一下哈哈:【焦虑】想做点社区贡献,但是又焦虑内耗。
网友解答:--【壹】--:
感谢佬友分享,我公司刚刚有4块闲置T4部署来玩玩
--【贰】--:
谢谢佬,我们也近期在准备部署本地的模型。4张4090 24G的,看了看这个显存情况来说,计划部署千问3.5-122B-A10B-GPTQ-Int4 来用。27B的总感觉参数少了点,96G的总显存,跑几个27B的感觉差点意思
--【叁】--:
感谢佬友分享
--【肆】--:
佬友,这个显存占用是咋显示的,是手动计算的吗
--【伍】--:
5090x2部署方案(Linux CUDA 12.9 容器环境)
export SGLANG_USE_MODELSCOPE=1
export SGLANG_ENABLE_SPEC_V2=1
export SGLANG_MAMBA_CONV_DTYPE=float16
python -m sglang.launch_server \
--model-path "Qwen/Qwen3.5-35B-A3B-GPTQ-Int4" \
--served-model-name "qwen3.5-35b" \
--tp 2 \
--dtype float16 \
--quantization moe_wna16 \
--context-length 263144 \
--mem-fraction-static 0.80 \
--max-running-requests 32 \
--chunked-prefill-size 16384 \
--mamba-scheduler-strategy extra_buffer \
--enable-flashinfer-allreduce-fusion \
--speculative-algorithm EAGLE \
--speculative-eagle-topk 1 \
--speculative-num-steps 3 \
--speculative-num-draft-tokens 4 \
--reasoning-parser qwen3 \
--tool-call-parser qwen3_coder \
--grammar-backend xgrammar \
--enable-custom-logit-processor \
--enable-cache-report \
--enable-metrics \
--host 0.0.0.0 \
--port 20080 \
压测:
| 输入长度 | 输出长度 | 并发数 | ITPS | OTPS |
|---|---|---|---|---|
| 1k | 1k | 1 | 4460 | 230 |
| 25k | 1k | 32 | 13978 | 916 |
| 50k | 1k | 16 | 17933 | 588 |
| 100k | 1k | 8 | 13508 | 248 |
| 200k | 1k | 4 | 11456 | 201 |
--【陆】--:
我现在没怎么关注,但是老店问题都不大,如果有机房隔离噪音就直接上涡轮卡,如果没有办法隔离噪音,那就要想办法改水冷。
这类卡现在就怕二次翻新,因为毕竟出来1年多了。当初第一批卡又很有可能回去又翻了一圈回来了。选老店有个好处就是能坚挺一年,当然如果你能直接线下更好。更稳妥。
我当时心比较大,到手没几个月,自己研究改水冷,还被坑了几次,硬是没把卡整报废。
--【柒】--:
25年1月,是比较早吃螃蟹的人了。当时23k币入的,我当时在b站做了个评测视频,然后拉了个群,很多买的朋友都在里面,我目前得知出问题返修的卡也就2张,我自己这张服役一年多,没啥事。
另外我自己改了水冷,主要是原卡涡轮噪音太大了,不适合家用。
改水冷以后,基本上满载也就65°,除了GPU,显存散热也要照顾到。
反正我觉得挺香的,当时有一批人入了4090D 48G的,我觉得更香,差了5k好像。
--【捌】--:
买了一年没掉价哈哈,我记得最低价的时候20k都有拿到的,正经公司肯定不太信任魔改,但是对于性价比来说,这卡无敌。改水冷以后非常抗造。而且保修还有B站张哥,不怕
--【玖】--:
佬 你买的魔改的48G花了多少钱?稳定不用的,会不会有啥暗病,我现在感觉24G显存单卡远远不够
--【拾】--:
顺带贴一个issue: [Bug] custom_logit_processor is skipped in SPEC_V2 verify steps · Issue #21724 · sgl-project/sglang · GitHub
--【拾壹】--:
你其实可以都测一下,有时候性能不代表体验。但是122B的吞吐一定是比27B强的。
我是榨干了自己的单卡性能,要不是有公益服,让我没有那么执着本地,不然我高低又搞一张48G。哈哈,我非常想要上122B(397B要升级太多,够不上)
--【拾贰】--:
你们真厉害,手里有那么多好货
--【拾叁】--:
35b没必要开mtp,意义不大。所以v2也不是必选项。
另外你如果用得上32并发的话,我也建议你把mamba ratio调小,0.5即可,这玩意占了大量显存,你改完以后会发现多了很多显存,给上下文不香吗。
--【拾肆】--:
96GB 显存可以跑 Qwen3.5-122B-A10B-GPTQ-Int4,官方的可能会稍微多占些显存,资源需要多些
--【拾伍】--:
复制启动log,给ai,让它列的,所以我用的截图(谨记社区准则 )
--【拾陆】--:
谢谢大佬分享
--【拾柒】--:
两万三 48G显存 也是香的不行了
现在魔改的不敢用了,主要是公司场景用
--【拾捌】--:
还有卖的渠道不,我当个备选方案~佬
--【拾玖】--:
目前我这里部署,max batch token在550k左右,反正是够用的。
我这边部署是多用户环境,吞吐量比较重要,mtp基本上是刚需。

