---
title: "ClikaRT::runtime::BatcherConfig"
sidebar_label: "BatcherConfig"
description: "Continuous-batch composition knobs."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--struct">struct</span>

**Header:** `ClikaRT/runtime/serving.h`

Continuous-batch composition knobs.

## Data members

### max\_batch {#max_batch}

<div class="api-signature">

`std::size_t` **`max_batch`** `= 0`

</div>

max sessions per step (0 = engine default)

<div class="api-declared">

Declared in `ClikaRT/runtime/serving.h`, line 109

</div>

### work\_budget {#work_budget}

<div class="api-signature">

`std::int64_t` **`work_budget`** `= 0`

</div>

per-step work cap (0 = unbounded)

<div class="api-declared">

Declared in `ClikaRT/runtime/serving.h`, line 110

</div>

### step\_token\_budget {#step_token_budget}

<div class="api-signature">

`std::int64_t` **`step_token_budget`** `= 0`

</div>

Cap on the tokens LAUNCHED per step, summed across the admitted sessions (0 = unbounded). Bounds a step's latency under mixed prompt-ingestion + decode traffic: a session whose next-step tokens don't fit the remaining budget waits for a later step. The first admitted session is exempt, so progress is always made.

<div class="api-declared">

Declared in `ClikaRT/runtime/serving.h`, line 116

</div>
