RTX PRO 5000(或其他48GB显存)的Qwen3.8-27B-FP8配置交流(prefill 5000+t/s,decode 60+t/s)
-
不错的分享。关注下。准备抄作业。
-
,系统 取消固定了此主题
-
并发数用
--max-mamba-cache-size控制比--mamba-full-memory-ratio更好。--mamba-radix-cache-strategy extra_buffer_lazy时,--max-mamba-cache-size= 并发数 x 4另外,
--speculative-num-steps对 MTP 的影响可能比--speculative-num-draft-tokens更大。 -
@用户名违规 怎么会全量 prefill 呢?把三级缓存都打开试下?
export SGLANG_HICACHE_FILE_BACKEND_STORAGE_DIR="/path/to/kvcache/folder"--mamba-radix-cache-strategy extra_buffer \ --enable-hierarchical-cache \ --hicache-size 16 \ --hicache-storage-backend file \ --schedule-policy lpm \ --enable-session-radix-cache \ --enable-metrics \hicache-size根据内存大小设置,或者用hicache-ratio -
@用户名违规 怎么会全量 prefill 呢?把三级缓存都打开试下?
export SGLANG_HICACHE_FILE_BACKEND_STORAGE_DIR="/path/to/kvcache/folder"--mamba-radix-cache-strategy extra_buffer \ --enable-hierarchical-cache \ --hicache-size 16 \ --hicache-storage-backend file \ --schedule-policy lpm \ --enable-session-radix-cache \ --enable-metrics \hicache-size根据内存大小设置,或者用hicache-ratio@Che 二级缓存我已经开了,但是从来不落盘到 RAM,我都 emo 了。
你打开之后会正常落盘吗?我这边直接就是全量 Prefill,十分难受。
目前的 Docker Compose 配置如下:
services: sglang: image: lmsysorg/sglang:dev container_name: sglang-server restart: unless-stopped runtime: nvidia cap_add: - SYS_NICE - SYS_PTRACE environment: - NVIDIA_VISIBLE_DEVICES=0 - CUDA_DEVICE_ORDER=PCI_BUS_ID - SGLANG_USE_IPC_POOL_HANDLE_CACHE=0 - PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True - TZ=Asia/Shanghai volumes: - /mnt/x8/Qmodels:/models:ro - /mnt/480/docker/sglang/cache/torch_compile:/root/.cache/torch_compile - /mnt/480/docker/sglang/cache/flash_attn_cute_cache:/root/.cache/flash_attn_cute_cache command: > sglang serve --model-path /models/Qwen3.8-27B --host 0.0.0.0 --port 30000 --trust-remote-code --attention-backend flashinfer --mamba-backend flashinfer --max-mamba-cache-size 15 --mamba-max-states-per-path 8 --kv-cache-dtype fp8_e4m3 --mem-fraction-static 0.94 --max-running-requests 3 --cuda-graph-bs-decode 1 2 3 --num-continuous-decode-steps 4 --prefill-max-requests 1 --schedule-policy lpm --enable-session-radix-cache --tool-call-parser qwen3_coder --reasoning-parser qwen3 --chunked-prefill-size 2048 --max-prefill-tokens 2048 --disable-prefill-cuda-graph --enable-fused-qk-norm-rope --enable-cudagraph-gc --log-level info --uvicorn-access-log-exclude-prefixes / --decode-log-interval 120 --allow-auto-truncate --enable-cache-report # 删除 --linear-attn-backend triton # 其他参数保持不变 shm_size: '16gb' network_mode: host logging: driver: json-file options: max-size: "100m" max-file: "3" # --enable-cache-report # --enable-hierarchical-cache # --hicache-ratio 2 # --hicache-io-backend kernel # --hicache-mem-layout page_first # --hicache-write-policy write_through之前尝试的二级缓存相关参数是:
--enable-hierarchical-cache --hicache-ratio 2 --hicache-io-backend kernel --hicache-mem-layout page_first --hicache-write-policy write_through但是实际运行时,二级缓存始终没有正常落到 RAM。再次请求时依然会进行全量 Prefill。
我看了一遍这些参数,暂时也没发现明显的问题。不知道是当前
sglang:dev的问题,还是 Qwen3.8-27B、Mamba/FlashInfer 这套组合存在兼容性问题。有正常使用 SGLang Hierarchical Cache 的朋友可以帮忙看看吗?尤其是开启之后,RAM 二级缓存是否能够正常命中?
-
@Che 二级缓存我已经开了,但是从来不落盘到 RAM,我都 emo 了。
你打开之后会正常落盘吗?我这边直接就是全量 Prefill,十分难受。
目前的 Docker Compose 配置如下:
services: sglang: image: lmsysorg/sglang:dev container_name: sglang-server restart: unless-stopped runtime: nvidia cap_add: - SYS_NICE - SYS_PTRACE environment: - NVIDIA_VISIBLE_DEVICES=0 - CUDA_DEVICE_ORDER=PCI_BUS_ID - SGLANG_USE_IPC_POOL_HANDLE_CACHE=0 - PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True - TZ=Asia/Shanghai volumes: - /mnt/x8/Qmodels:/models:ro - /mnt/480/docker/sglang/cache/torch_compile:/root/.cache/torch_compile - /mnt/480/docker/sglang/cache/flash_attn_cute_cache:/root/.cache/flash_attn_cute_cache command: > sglang serve --model-path /models/Qwen3.8-27B --host 0.0.0.0 --port 30000 --trust-remote-code --attention-backend flashinfer --mamba-backend flashinfer --max-mamba-cache-size 15 --mamba-max-states-per-path 8 --kv-cache-dtype fp8_e4m3 --mem-fraction-static 0.94 --max-running-requests 3 --cuda-graph-bs-decode 1 2 3 --num-continuous-decode-steps 4 --prefill-max-requests 1 --schedule-policy lpm --enable-session-radix-cache --tool-call-parser qwen3_coder --reasoning-parser qwen3 --chunked-prefill-size 2048 --max-prefill-tokens 2048 --disable-prefill-cuda-graph --enable-fused-qk-norm-rope --enable-cudagraph-gc --log-level info --uvicorn-access-log-exclude-prefixes / --decode-log-interval 120 --allow-auto-truncate --enable-cache-report # 删除 --linear-attn-backend triton # 其他参数保持不变 shm_size: '16gb' network_mode: host logging: driver: json-file options: max-size: "100m" max-file: "3" # --enable-cache-report # --enable-hierarchical-cache # --hicache-ratio 2 # --hicache-io-backend kernel # --hicache-mem-layout page_first # --hicache-write-policy write_through之前尝试的二级缓存相关参数是:
--enable-hierarchical-cache --hicache-ratio 2 --hicache-io-backend kernel --hicache-mem-layout page_first --hicache-write-policy write_through但是实际运行时,二级缓存始终没有正常落到 RAM。再次请求时依然会进行全量 Prefill。
我看了一遍这些参数,暂时也没发现明显的问题。不知道是当前
sglang:dev的问题,还是 Qwen3.8-27B、Mamba/FlashInfer 这套组合存在兼容性问题。有正常使用 SGLang Hierarchical Cache 的朋友可以帮忙看看吗?尤其是开启之后,RAM 二级缓存是否能够正常命中?

