LLAMA-BATCHED(1)
π NAME π
llama-batched β it's literally llama-batched, bestie. That's the whole name, no cap.
This one lives in the User Commands chapter, and its manual page is called LLAMA-BATCHED(1). So when you type man llama-batched, this is the glow-up you get. β¨
πΈ DESCRIPTION πΈ
okay so this is not a tiny page. It's giving "novel". We're doing this in parts, and this is part 1 β the "common params" zone, i.e. all the flags this thing shares with its llama.cpp siblings. Grab a drink π
β¨ common params β¨
-h,--help,--usageβ prints the usage text and then dips. That's it. That's the whole job. π--versionβ show the version and the build info, so you can screenshot it when you file that issue.-cl,--cache-listβ show you the list of models chilling in the cache. Model inventory reveal β¨--completion-bashβ prints a bash completion script forllama.cppthat you can source. Free tab-completion. Spoiled, honestly. π-t,--threads Nβ how many CPU threads to use during generation. (default:<num_cpus>) β env:LLAMA_ARG_THREADS-tb,--threads-batch Nβ how many threads to use during batch and prompt processing. (default: same as--threads)
the CPU-affinity era begins, bestie:
-C,--cpu-mask Mβ CPU affinity mask: an arbitrarily long hex number. It complementscpu-range. (default:"")-Cr,--cpu-range lo-hiβ the range of CPUs for affinity. It complements--cpu-mask. The two of them are a duo π«Ά--cpu-strict <0|1>β use strict CPU placement. (default:0)--prio Nβ set the process/thread priority: low(-1), normal(0), medium(1), high(2), realtime(3). (default:0)--poll <0...100>β use this polling level to wait for work. (0= no polling, default:50)-Cb,--cpu-mask-batch Mβ CPU affinity mask, arbitrarily long hex. Complementscpu-range-batch. (default: same as--cpu-mask)-Crb,--cpu-range-batch lo-hiβ ranges of CPUs for affinity. Complements--cpu-mask-batch.--cpu-strict-batch <0|1>β use strict CPU placement. (default: same as--cpu-strict)--prio-batch Nβ set process/thread priority:0-normal,1-medium,2-high,3-realtime. (default:0)--poll-batch <0|1>β use polling to wait for work. (default: same as--poll)
context + prediction, the main character section:
-c,--ctx-size Nβ size of the prompt context. (default:0, and0= loaded from model) β env:LLAMA_ARG_CTX_SIZE-n,--predict,--n-predict Nβ number of tokens to predict. (default:32,-1= infinity π) β env:LLAMA_ARG_N_PREDICT-b,--batch-size Nβ logical maximum batch size. (default:2048) β env:LLAMA_ARG_BATCH-ub,--ubatch-size Nβ physical maximum batch size. (default:512) β env:LLAMA_ARG_UBATCH--keep Nβ number of tokens to keep from the initial prompt. (default:0,-1= all)--swa-fullβ use the full-size SWA cache. (default:false) β there's more info athttps://github.com/ggml-org/llama.cpp/pull/13194#issuecomment-2868343055β env:LLAMA_ARG_SWA_FULL-fa,--flash-attn [on|off|auto]β set Flash Attention use:'on','off', or'auto'. (default:'auto') β env:LLAMA_ARG_FLASH_ATTN-p,--prompt PROMPTβ the prompt to start generation with. And if you want a system message, use-sys. π--perf,--no-perfβ whether to enable internallibllamaperformance timings. (default:false) β env:LLAMA_ARG_PERF-f,--file FNAMEβ a file containing the prompt. (default: none)-bf,--binary-file FNAMEβ a binary file containing the prompt. (default: none)-e,--escape,--no-escapeβ whether to process escape sequences (\n,\r,\t,\',\",\\). (default:true)
RoPE + YaRN corner, where the context gets stretched like taffy:
--rope-scaling {none,linear,yarn}β RoPE frequency scaling method. Defaults tolinearunless the model itself says otherwise. β env:LLAMA_ARG_ROPE_SCALING_TYPE--rope-scale Nβ RoPE context scaling factor; expands the context by a factor ofN. β env:LLAMA_ARG_ROPE_SCALE--rope-freq-base Nβ RoPE base frequency, used by NTK-aware scaling. (default: loaded from model) β env:LLAMA_ARG_ROPE_FREQ_BASE--rope-freq-scale Nβ RoPE frequency scaling factor; expands context by a factor of1/N. β env:LLAMA_ARG_ROPE_FREQ_SCALE--yarn-orig-ctx Nβ YaRN: original context size of the model. (default:0= the model's training context size) β env:LLAMA_ARG_YARN_ORIG_CTX--yarn-ext-factor Nβ YaRN: extrapolation mix factor. (default:-1.00, and0.0= full interpolation) β env:LLAMA_ARG_YARN_EXT_FACTOR--yarn-attn-factor Nβ YaRN: scalesqrt(t)or attention magnitude. (default:-1.00) β env:LLAMA_ARG_YARN_ATTN_FACTOR--yarn-beta-slow Nβ YaRN: high correction dim or alpha. (default:-1.00) β env:LLAMA_ARG_YARN_BETA_SLOW--yarn-beta-fast Nβ YaRN: low correction dim or beta. (default:-1.00) β env:LLAMA_ARG_YARN_BETA_FAST
memory + cache vibes:
-kvo,--kv-offload,-nkvo,--no-kv-offloadβ whether to enable KV cache offloading. (default: enabled) β env:LLAMA_ARG_KV_OFFLOAD--repack,-nr,--no-repackβ whether to enable weight repacking. (default: enabled) β env:LLAMA_ARG_REPACK--no-hostβ bypass the host buffer, which allows extra buffers to be used. β env:LLAMA_ARG_NO_HOST-ctk,--cache-type-k TYPEβ KV cache data type for K. Allowed values:f32,f16,bf16,q8_0,q4_0,q4_1,iq4_nl,q5_0,q5_1. (default:f16) β env:LLAMA_ARG_CACHE_TYPE_K-ctv,--cache-type-v TYPEβ KV cache data type for V. Allowed values:f32,f16,bf16,q8_0,q4_0,q4_1,iq4_nl,q5_0,q5_1. (default:f16) β env:LLAMA_ARG_CACHE_TYPE_V-dt,--defrag-thold Nβ KV cache defragmentation threshold. β οΈ DEPRECATED β οΈ β env:LLAMA_ARG_DEFRAG_THOLD-np,--parallel Nβ number of parallel sequences to decode. (default:1) β env:LLAMA_ARG_N_PARALLEL
π deprecation zone, pay attention bestie: all three of these are DEPRECATED in favor of --load-mode. They still exist, they still do the thing, but the cool kids moved on.
--mlockβ DEPRECATED in favor of--load-mode: force the system to keep the model in RAM rather than swapping or compressing it. β env:LLAMA_ARG_MLOCK--mmap,--no-mmapβ DEPRECATED in favor of--load-mode: whether to memory-map the model. (if mmap is disabled, you get a slower load but it may reduce pageouts if you're not using mlock) β env:LLAMA_ARG_MMAP-dio,--direct-io,-ndio,--no-direct-ioβ DEPRECATED in favor of--load-mode: use DirectIO if it's available. β env:LLAMA_ARG_DIO
-lm,--load-mode MODEβ model loading mode. (default:auto) β env:LLAMA_ARG_LOAD_MODEauto: mmap, unless a device doesn't support itnone: no special loading modemmap: memory-map the model (if mmap is disabled, slower load but may reduce pageouts if not using mlock)mlock: force the system to keep the model in RAM rather than swapping or compressingmmap+mlock: mmap + force the system to keep the model in RAM rather than swapping or compressingdio: use DirectIO if available
--numa TYPEβ attempt optimizations that help on some NUMA systems. β env:LLAMA_ARG_NUMAdistribute: spread execution evenly over all nodesisolate: only spawn threads on CPUs on the node that execution started onnumactl: use the CPU map provided bynumactl
And if you've run without this before, it's recommended that you drop the system page cache before using this. See https://github.com/ggml-org/llama.cpp/issues/1437.
devices, GPUs, and splitting the model like a pizza π:
-dev,--device <dev1,dev2,..>β comma-separated list of devices to use for offloading (none= don't offload). Use--list-devicesto see a list of available devices. β env:LLAMA_ARG_DEVICE--list-devicesβ print the list of available devices and exit. Peek at the roster π-ot,--override-tensor <tensor name pattern>=<buffer type>,...β override tensor buffer type. β env:LLAMA_ARG_OVERRIDE_TENSOR-cmoe,--cpu-moeβ keep all Mixture of Experts (MoE) weights in the CPU. β env:LLAMA_ARG_CPU_MOE-ncmoe,--n-cpu-moe Nβ keep the Mixture of Experts (MoE) weights of the firstNlayers in the CPU. β env:LLAMA_ARG_N_CPU_MOE-ngl,--gpu-layers,--n-gpu-layers Nβ max number of layers to store in VRAM, either an exact number,'auto', or'all'. (default:auto) β env:LLAMA_ARG_N_GPU_LAYERS-sm,--split-mode {none,layer,row,tensor}β how to split the model across multiple GPUs, one of: β env:LLAMA_ARG_SPLIT_MODEnone: use one GPU onlylayer(default): split layers and KV across GPUs (pipelined)row: split weight across GPUs by rows (parallelized)tensor: split weights and KV across GPUs (parallelized, EXPERIMENTAL π§ͺ)
-ts,--tensor-split N0,N1,N2,...β fraction of the model to offload to each GPU; a comma-separated list of proportions, e.g.3,1. β env:LLAMA_ARG_TENSOR_SPLIT-mg,--main-gpu INDEXβ the GPU to use for the model (withsplit-mode = none), or for intermediate results and KV (withsplit-mode = row). (default:0) β env:LLAMA_ARG_MAIN_GPU-fit,--fit [on|off]β whether to adjust unset arguments to fit in device memory:'on'or'off'. (default:'on') β env:LLAMA_ARG_FIT-fitt,--fit-target MiB0,MiB1,MiB2,...β target margin per device for--fit; a comma-separated list of values, and a single value is broadcast across all devices. default:1024β env:LLAMA_ARG_FIT_TARGET-fitc,--fit-ctx Nβ minimum ctx size that can be set by the--fitoption. default:4096β env:LLAMA_ARG_FIT_CTX--check-tensorsβ check the model tensor data for invalid values. (default:false)--override-kv KEY=TYPE:VALUE,...β advanced option to override model metadata by key. To specify multiple overrides, either use comma-separated values. Types:int,float,bool,str. Example:
--override-kv tokenizer.ggml.add_bos_token=bool:false,tokenizer.ggml.add_eos_token=bool:false
--op-offload,--no-op-offloadβ whether to offload host tensor operations to device. (default:true)
adapters + control vectors, the customization section π:
--lora FNAMEβ path to the LoRA adapter (use comma-separated values to load multiple adapters).--lora-scaled FNAME:SCALE,...β path to the LoRA adapter with a user-defined scaling. (format:FNAME:SCALE,...) note: use comma-separated values.--control-vector FNAMEβ add a control vector. note: use comma-separated values to add multiple control vectors.--control-vector-scaled FNAME:SCALE,...β add a control vector with a user-defined scalingSCALE. note: use comma-separated values. (format:FNAME:SCALE,...)--control-vector-layer-range START ENDβ layer range to apply the control vector(s) to, start and end inclusive.
-m,--model FNAMEβ model path to load. β env:LLAMA_ARG_MODEL-mu,--model-url MODEL_URLβ model download url. (default: unused) β env:LLAMA_ARG_MODEL_URL-dr,--docker-repo [<repo>/]<model>[:quant]
π«Ά okay so this is exactly where part 1 of the page runs out β the description for -dr picks up in the next chunk. Don't @ me, I'm just the messenger. Part 2 incoming π
- Docker Hub model repository. repo is optional, defaults to
ai/. quant is optional, defaults to:latest. example:gemma3(default: unused) (env:LLAMA_ARG_DOCKER_REPO) -hf,-hfr,--hf-repo <user>/<model>[:quant]β bestie this one pulls straight from Hugging Face π it's the model repository, and quant is optional, case-insensitive, defaults toQ4_K_M, or lowkey falls back to the first file in the repo ifQ4_K_Mdoesn't exist.mmprojalso gets downloaded automatically if it's available β to disable that, add--no-mmproj. example:ggml-org/GLM-4.7-Flash-GGUF:Q4_K_M(default: unused) (env:LLAMA_ARG_HF_REPO)-hff,--hf-file FILEβ the Hugging Face model file. if you specify this, it overrides the quant in--hf-repo(default: unused) (env:LLAMA_ARG_HF_FILE)-hft,--hf-token TOKENβ your Hugging Face access token (default: value from theHF_TOKENenvironment variable) (env:HF_TOKEN)--log-disableβ Log disable π« (yes bestie, the logs go bye-bye)--log-file FNAMEβ log it all to a file instead (env:LLAMA_ARG_LOG_FILE)--log-colors [on|off|auto]β set colored logging, so the options are'on','off', or'auto'(default:'auto').'auto'turns the colors on when the output is going to a terminal β¨ (env:LLAMA_ARG_LOG_COLORS)-v,--verbose,--log-verboseβ cranks the verbosity level to infinity, meaning it logs all messages. super useful for debugging π₯--offlineβ offline mode: forces use of the cache and prevents network access π (env:LLAMA_ARG_OFFLINE)-lv,--verbosity,--log-verbosity Nβ set the verbosity threshold. any message with a higher verbosity gets ignored. values:0: generic output1: error2: warning3: info4: trace (more info)5: debug
(default: 3) (env: LLAMA_ARG_LOG_VERBOSITY)
--log-prefix,--no-log-prefixβ enable prefix in log messages (env:LLAMA_ARG_LOG_PREFIX)--log-timestamps,--no-log-timestampsβ enable timestamps in log messages (env:LLAMA_ARG_LOG_TIMESTAMPS)--spec-draft-type-k,-ctkd,--cache-type-k-draft TYPEβ the KV cache data type for K, for the draft model. allowed values:f32,f16,bf16,q8_0,q4_0,q4_1,iq4_nl,q5_0,q5_1(default:f16) (env:LLAMA_ARG_SPEC_DRAFT_CACHE_TYPE_K)--spec-draft-type-v,-ctvd,--cache-type-v-draft TYPEβ the KV cache data type for V, for the draft model. allowed values:f32,f16,bf16,q8_0,q4_0,q4_1,iq4_nl,q5_0,q5_1(default:f16) (env:LLAMA_ARG_SPEC_DRAFT_CACHE_TYPE_V)
π sampling params π
--samplers SAMPLERSβ the samplers used for generation, in order, separated by;(default:penalties;dry;top_n_sigma;top_k;typ_p;top_p;min_p;xtc;temperature)-s,--seed SEEDβ the RNG seed (default:-1, and-1means use a random seed for you π²)--sampler-seq,--sampling-seq SEQUENCEβ a simplified sequence for the samplers that will be used (default:edskypmxt)--ignore-eosβ ignore the end of stream token and keep generating (this implies--logit-bias EOS-inf) π--temp,--temperature Nβ temperature (default:0.80)--top-k Nβ top-k sampling (default:40,0= disabled) (env:LLAMA_ARG_TOP_K)--top-p Nβ top-p sampling (default:0.95,1.0= disabled)--min-p Nβ min-p sampling (default:0.05,0.0= disabled)--top-nsigma,--top-n-sigma Nβ top-n-sigma sampling (default:-1.00,-1.0= disabled)--xtc-probability Nβ xtc probability (default:0.00,0.0= disabled)--xtc-threshold Nβ xtc threshold (default:0.10,1.0= disabled)--typical,--typical-p Nβ locally typical sampling, parameter p (default:1.00,1.0= disabled)--repeat-last-n Nβ last n tokens to consider for penalize (default:64,0= disabled)--repeat-penalty Nβ penalize repeat sequence of tokens (default:1.00,1.0= disabled)--presence-penalty Nβ repeat alpha presence penalty (default:0.00,0.0= disabled)--frequency-penalty Nβ repeat alpha frequency penalty (default:0.00,0.0= disabled)--dry-multiplier Nβ set the DRY sampling multiplier (default:0.00,0.0= disabled)--dry-base Nβ set the DRY sampling base value (default:1.75)--dry-allowed-length Nβ set the allowed length for DRY sampling (default:2)--dry-penalty-last-n Nβ set the DRY penalty for the last n tokens (default:64,0= disable)--dry-sequence-breaker STRINGβ add a sequence breaker for DRY sampling, which clears out the default breakers ('\n',':','"','*') in the process. use"none"if you don't want any sequence breakers π«--adaptive-target Nβ adaptive-p: select tokens near this probability (valid range0.0to1.0; negative = disabled) (default:-1.00) [(more info)] β the link ishttps://github.com/ggml-org/llama.cpp/pull/17927--adaptive-decay Nβ adaptive-p: decay rate for target adaptation over time. lower values are more reactive, higher values are more stable. (valid range0.0to0.99) (default:0.90)--dynatemp-range Nβ dynamic temperature range (default:0.00,0.0= disabled)--dynatemp-exp Nβ dynamic temperature exponent (default:1.00)--mirostat Nβ use Mirostat sampling. heads up bestie, Top K, Nucleus and Locally Typical samplers get ignored if used. (default:0,0= disabled,1= Mirostat,2= Mirostat 2.0)--mirostat-lr Nβ Mirostat learning rate, parameter eta (default:0.10)--mirostat-ent Nβ Mirostat target entropy, parameter tau (default:5.00)-l,--logit-bias TOKEN_ID(+/-)BIASβ modifies the likelihood of a token appearing in the completion, i.e.--logit-bias 15043+1to increase the likelihood of token' Hello', or--logit-bias 15043-1to decrease the likelihood of token' Hello'π--grammar GRAMMARβ BNF-like grammar to constrain generations (peep the samples in thegrammars/dir)--grammar-file FNAMEβ file to read the grammar from-j,--json-schema SCHEMAβ JSON schema to constrain generations (https://json-schema.org/), e.g.{}for any JSON object. for schemas w/ external$refs, use--grammar+example/json_schema_to_grammar.pyinstead-jf,--json-schema-file FILEβ file containing a JSON schema to constrain generations (https://json-schema.org/), e.g.{}for any JSON object. for schemas w/ external$refs, use--grammar+example/json_schema_to_grammar.pyinstead-bs,--backend-samplingβ enable backend sampling (experimental, bestie, so be gentle with it π) (default: disabled) (env:LLAMA_ARG_BACKEND_SAMPLING)
β¨ example-specific params β¨
-kvu,--kv-unified,-no-kvu,--no-kv-unifiedβ use a single unified KV buffer shared across all sequences (default: enabled if number of slots is auto) (env:LLAMA_ARG_KV_UNIFIED)
example usage, periodt:
llama-batched -m model.gguf -p "Hello my name is" -n 32 -np 4
and that's the whole page bestie, we ate π this one's from debian, dated September 2026 β no cap, you're now a LLAMA-BATCHED(1) main character ππ
π¦ where this page comes from
- ubuntu stonking: llama.cpp-examples 10438+dfsg-1ubuntu1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms