Ornith-1.0-35B-GGUF-llamacpp-tp1 / configs /serving_profiles.yaml
LordNeel's picture
Add machine-readable serving profile catalog
7c01a4f verified
Raw
History Blame Contribute Delete
5.43 kB
model:
hf_repo: deepreinforce-ai/Ornith-1.0-35B
release_repo: LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1
served_name: Ornith-1.0-35B
policy:
serving_parallelism: tp1_only
tensor_parallel_size: 1
backend: llama.cpp
reasoning: "off"
gpu_usage_note: Use one independent model copy per GPU. Do not split one serving replica across GPUs.
forbidden:
- tensor_parallel_size_gt_1
- multi_gpu_serving
default_profile: llamacpp_q4_k_m_coding_context
lowest_memory_profile: llamacpp_q3_k_m_short_context
middle_footprint_profile: llamacpp_iq4_xs_short_context
adaptive_mtp_profile: llamacpp_iq4_xs_mtp_graft_adaptive
profiles:
- id: llamacpp_q4_k_m_short_context
status: recommended_speed_benchmark
backend: llama.cpp
tensor_parallel_size: 1
artifact: ornith-1.0-35b-Q4_K_M.gguf
quant: Q4_K_M
command:
script: scripts/serve_llamacpp_gpu0.sh
env:
QUANT: Q4_K_M
PORT: "8002"
CTX_SIZE: "8192"
PARALLEL: "16"
BATCH_SIZE: "4096"
UBATCH_SIZE: "512"
REASONING: "off"
measured:
loaded_vram_gib: 21.31
c1_output_tps: 243.3
c16_output_tps: 655.6
c16_p95_ttft_ms: 650.0
behavior_gate: pass
evidence:
benchmark: benchmarks/llamacpp-quant-benchmarks.md
behavior: probes/behavior-llamacpp-q4-script-default.json
notes:
- Short-context benchmark profile exposes about 512 tokens per slot because CTX_SIZE is split across PARALLEL slots.
- id: llamacpp_q4_k_m_coding_context
status: recommended_default
backend: llama.cpp
tensor_parallel_size: 1
artifact: ornith-1.0-35b-Q4_K_M.gguf
quant: Q4_K_M
command:
script: scripts/serve_llamacpp_gpu0.sh
env:
QUANT: Q4_K_M
PORT: "8002"
CTX_SIZE: "131072"
PARALLEL: "16"
BATCH_SIZE: "4096"
UBATCH_SIZE: "512"
REASONING: "off"
measured:
loaded_vram_gib_short_context: 21.31
c16_output_tps_short_context: 655.6
behavior_gate: pass
evidence:
benchmark: benchmarks/llamacpp-quant-benchmarks.md
behavior: probes/behavior-llamacpp-q4-script-default.json
notes:
- Practical coding-serving profile with 16 slots and about 8k context per slot.
- Throughput numbers come from the matched short-context sweep.
- id: llamacpp_q3_k_m_short_context
status: lowest_memory_validated
backend: llama.cpp
tensor_parallel_size: 1
artifact: ornith-1.0-35b-Q3_K_M.gguf
quant: Q3_K_M
command:
script: scripts/serve_llamacpp_gpu0.sh
env:
QUANT: Q3_K_M
PORT: "8002"
CTX_SIZE: "8192"
PARALLEL: "16"
BATCH_SIZE: "4096"
UBATCH_SIZE: "512"
REASONING: "off"
measured:
gguf_gib: 15.61
loaded_vram_gib: 17.27
c1_output_tps: 240.5
c16_output_tps: 493.0
mean_kld_nats_vs_bf16_top64: 0.3620
behavior_gate: pass
evidence:
benchmark: benchmarks/llamacpp-quant-benchmarks.md
kld: benchmarks/kld-quant-vs-bf16-top64.md
behavior: probes/behavior-llamacpp-q3-k-m-parallel16.json
- id: llamacpp_iq4_xs_short_context
status: middle_footprint_validated
backend: llama.cpp
tensor_parallel_size: 1
artifact: ornith-1.0-35b-IQ4_XS.gguf
quant: IQ4_XS
command:
script: scripts/serve_llamacpp_gpu0.sh
env:
QUANT: IQ4_XS
PORT: "8002"
CTX_SIZE: "8192"
PARALLEL: "16"
BATCH_SIZE: "4096"
UBATCH_SIZE: "512"
REASONING: "off"
measured:
gguf_gib: 17.64
loaded_vram_gib: 19.34
c1_output_tps: 234.1
c16_output_tps: 476.0
mean_kld_nats_vs_bf16_top64: 0.1426
behavior_gate: pass
evidence:
benchmark: benchmarks/llamacpp-quant-benchmarks.md
kld: benchmarks/kld-quant-vs-bf16-top64.md
behavior: probes/behavior-llamacpp-iq4-xs-parallel16.json
- id: llamacpp_iq4_xs_mtp_graft_adaptive
status: experimental_adaptive_mtp
backend: llama.cpp
tensor_parallel_size: 1
artifact: ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf
quant: IQ4_XS_with_Q6_MTP_head
command:
script: scripts/serve_llamacpp_gpu0.sh
env:
MODEL_PATH: ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf
ALIAS: Ornith-1.0-35B-GGUF-IQ4_XS-MTP
PORT: "8002"
CTX_SIZE: "8192"
PARALLEL: "16"
BATCH_SIZE: "4096"
UBATCH_SIZE: "512"
REASONING: "off"
SPEC_TYPE: draft-mtp
SPEC_DRAFT_N_MAX: "2"
SPEC_DRAFT_N_MIN: "0"
SPEC_DRAFT_BACKEND_SAMPLING: "1"
LLAMA_SPEC_MAX_DRAFTING_SLOTS: "1"
LLAMA_MTP_FAST_BACKEND_SAMPLE: "1"
LLAMA_MTP_DRAFT_TOP_K: "1"
LLAMA_MTP_DRAFT_TOP_P: "1"
LLAMA_MTP_DRAFT_TEMP: "1"
measured:
c1_ar_tps: 221.80
c1_mtp_adaptive_tps: 319.53
c1_acceptance_by_position:
- 0.953
- 0.865
c16_ar_tps: 568.57
c16_adaptive_tps: 564.48
c16_threshold1_tps: 592.45
evidence:
benchmark: benchmarks/llamacpp-iq4-xs-mtp-graft-adaptive-profile.md
patch: patches/llamacpp-mtp-adaptive-serving-and-recurrent-rollback.patch
caveats:
- Always-on MTP is not recommended at saturated c16 because it was slower than target-only decoding.
- Adaptive throttling uses MTP for low-concurrency requests and disables it under saturated batches.