---
title: "ClikaRT::graph::BenchOptions"
sidebar_label: "BenchOptions"
description: "The knobs of one ModelGraph::bench call. Every field has a default."
---

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

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

**Header:** `ClikaRT/graph/bench.h`

The knobs of one [`ModelGraph::bench`](./ModelGraph.md#bench) call. Every field has a default.

## Data members

### warmup {#warmup}

<div class="api-signature">

`std::int32_t` **`warmup`** `= 3`

</div>

untimed runs before the measured ones

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 94

</div>

### iterations {#iterations}

<div class="api-signature">

`std::int32_t` **`iterations`** `= 20`

</div>

measured runs; every one lands in the report

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 95

</div>

### fill {#fill}

<div class="api-signature">

[`FeedFill`](./index.md#FeedFill) **`fill`** `=` [`FeedFill::Zeros`](./index.md#FeedFill)

</div>

how synthesized inputs are filled

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 96

</div>

### device {#device}

<div class="api-signature">

`std::optional<`[`Device`](../Device.md)`>` **`device`**

</div>

The device the synthesized inputs are placed on. Unset: the device the graph's first bound input lives on, else the CPU.

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 99

</div>

### reuse\_output\_buffers {#reuse_output_buffers}

<div class="api-signature">

`bool` **`reuse_output_buffers`** `= true`

</div>

Write every run after the first into preallocated output buffers, so the measured runs exclude output allocation. False allocates fresh outputs on every run.

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 103

</div>

### batch\_axis {#batch_axis}

<div class="api-signature">

`std::optional<std::int32_t>` **`batch_axis`**

</div>

The axis items are counted along for the throughput figure. Unset: the first input's [`ShapeDomain::batch_axis`](./ShapeDomain.md#batch_axis) guess.

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 106

</div>

### profile\_dir {#profile_dir}

<div class="api-signature">

`std::optional<std::string>` **`profile_dir`**

</div>

When set, a profile of the measured runs is written under this directory.

<div class="api-declared">

Declared in `ClikaRT/graph/bench.h`, line 108

</div>
