Files
serverAppConfigs/scripts/frank-default-small.env
T
Frank 9d7643ec5d frank-default-small: ncmoe 35->36 for prefill stability
Fix a live crash: cuBLAS cudaErrorInvalidValue in ggml_cuda_mul_mat_cublas
killed the service during a 145k-token prefill burst at ncmoe35/ub3072.

ncmoe 36 moves one more expert layer to CPU: frees ~0.75 GiB peak VRAM
(grid: peak 8606 vs 9360 MiB at ub3072) for -2% prefill / -2% decode.
Keeps prefill priority (top ubatch tier). Docs synced; noted fallback
GGML_CUDA_FORCE_MMQ=1 if pressure persists.
2026-08-14 10:56:40 -07:00

50 lines
2.1 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Tunables for frank-default-small (HauhauCS Q6_K_P, ngram-mod spec, dankserver)
# Runtime: llama-server b10108; RTX 3090 24GB; Ryzen 7 7700X; 62GB RAM.
MODEL_DIR=/home/dank/models
ALIAS=frank-default-small
HOST=0.0.0.0
PORT=7770
# 4 parallel slots x 200000 ctx each = 800000 total context pool.
# (Increased from 3×200k to add a 4th parallel stream.)
CTX_SIZE=800000
PARALLEL=4
# Spec: ngram-mod. n_min=48, n_max=64, n_match=24 (defaults). 4 expert
# layers back on GPU; 36 on CPU. Batch 8192 / ubatch 3072.
SPEC_TYPE=ngram-mod
NGRAM_MOD_N_MIN=48
NGRAM_MOD_N_MAX=64
NGRAM_MOD_N_MATCH=24
# Expert offload: 36 of 40 layers keep MoE weights on CPU; remaining
# 4 layers have their expert weights resident on GPU for faster routing.
# Chosen for prefill-max stability at ubatch 3072: frees ~0.75 GiB peak
# VRAM vs ncmoe 35 (grid: peak 8606 vs 9360 MiB) for -2% prefill, -2%
# decode. Fixes the cuBLAS OOM crash class during big prefills.
N_CPU_MOE=36
N_GPU_LAYERS=all
# KV cache on GPU, K quantized to q8_0, V stays f16 (user-locked decision).
CACHE_TYPE_K=q8_0
CACHE_TYPE_V=f16
# Store SWA checkpoints in RAM to hold peak GPU memory down for the
# larger batch/ubatch (leaves headroom for ctx-checkpoints operation).
CTX_CHECKPOINTS=4
# Larger batches / ubatch for big prefill workloads.
# ubatch 3072 (benchmark-chosen): prefill is the priority; this is the top
# prefill tier (~1458 t/s) with ~1.2 GiB headroom. Decode is independent.
BATCH_SIZE=8192
UBATCH_SIZE=3072
# Load the model into RAM rather than lazy-mapping it. The MoE experts live on
# CPU, so eager RAM load avoids page faults during decode (uses ~31GB RAM).
NO_MMAP=1
# Compute threads lowered to 7 so other processes on the box keep a core.
# Sampling settings — per HauhauCS Qwen3.6-35B-A3B model card.
# Thinking-general: temp=1.0, top_p=0.95, top_k=20, min_p=0.
# Clients may override per-request; these are the server-side defaults.
# WARNING: do not name this variable TEMP. The ROCm HIP runtime reads the
# TEMP environment variable (JIT kernel-cache dir); TEMP=1.0 made the HIP
# runtime SEGV (NULL unref) during model load on Aug 13 2026.
TEMPERATURE=1.0
TOP_K=20
TOP_P=0.95
MIN_P=0.0
THREADS=7
THREADS_HTTP=8