# Tunables for frank-default-small (Qwen3.6-35B-A3B-FP8, # qwen3_5_moe hybrid MoE, Dankserver, RTX 3090). # # Runtime: FreeToken v0.1.2 (edge-native MoE serving engine). # Installed via uv into /home/dank/freetoken/.venv (CPython 3.12). # FreeToken keeps expert weights in host RAM with an LRU GPU cache; # KV is paged with radix prefix sharing. Only the 10 full-attention # layers page KV (~20 KiB/token); the 30 GDN layers use constant-size # per-sequence state (mamba slot pool). # # Model: Qwen/Qwen3.6-35B-A3B-FP8 (HuggingFace safetensors, modelopt # block-fp8 quant, 128x128 weight_block_size, 35 GB on disk). # Architecture: qwen3_5_moe — 40 layers (10 attention + 30 GDN), # 256 experts / 8 used, 2 KV heads × 256 dim, full_attention_interval=4. # # Replaced the llama.cpp Tiel-Coder-35B-A3B (UD-Q6_K_XL) deployment on # 2026-09-02. The old serve script and env are in .AGENTTRASH/. # # Pool sizing: GPU budget (~17.6 GiB after weights + fixed caches) is # split MoE-first. MOE_CACHE_SIZE pins resident expert slots; NUM_TOKENS # pins the KV pool. At 2048 slots / 453005 tokens the split is ~20% # residency (2048/10240) and ~8.6 GiB KV. Live resize via # `ft ctl cache --kv N --moe M` can grow KV by shrinking MoE without # restart (the reverse requires a restart). # # WARNING: do not name any variable TEMP, HOST, or GPU_MAX_HEAP_SIZE. # The ROCm HIP runtime reads those bare env vars (see the 2026-08-13 TEMP # incident). This box is NVIDIA/CUDA, but the rule keeps the env portable. # Model directory (safetensors checkpoint, 35 GB). MODEL_DIR=/home/dank/models/qwen36-35b-a3b-fp8 # FreeToken venv (uv-managed CPython 3.12, ft CLI, flashinfer, torch+cu130). FT_VENV=/home/dank/freetoken/.venv CUDA_HOME_DIR=/home/dank/freetoken/.venv/lib/python3.12/site-packages/nvidia/cu13 ALIAS=frank-default-small BIND_ADDR=0.0.0.0 LISTEN_PORT=7770 # Expert residency: 2048 of 10240 total expert instances (20%). # Each slot ~3 MiB → ~6.0 GiB VRAM for the MoE cache. MOE_CACHE_SIZE=2048 # KV pool: 453005 tokens (~8.6 GiB at ~20 KiB/token). # Covers 4 concurrent sessions at ~113k unique context each # (more with radix prefix sharing for common prefixes). NUM_TOKENS=453005 # Max concurrent decoding requests (also caps mamba slot allocation). MAX_RUNNING_REQUESTS=4