# BenchConfig
<span class="source-link">[[Source]](src/ponybench/benchmark.md#L52)</span>

Configuration of a benchmark.


```pony
class val BenchConfig
```

## Constructors

### create
<span class="source-link">[[Source]](src/ponybench/benchmark.md#L69)</span>


```pony
new val create(
  samples': USize val = seq,
  max_iterations': U64 val = seq,
  max_sample_time': U64 val = seq)
: BenchConfig val^
```
#### Parameters

*   samples': [USize](builtin-USize) val = seq
*   max_iterations': [U64](builtin-U64) val = seq
*   max_sample_time': [U64](builtin-U64) val = seq

#### Returns

* [BenchConfig](ponybench-BenchConfig) val^

---

## Public fields

### let samples: [USize](builtin-USize) val
<span class="source-link">[[Source]](src/ponybench/benchmark.md#L56)</span>

Total number of samples to be measured. (Default: 20)




---

### let max_iterations: [U64](builtin-U64) val
<span class="source-link">[[Source]](src/ponybench/benchmark.md#L60)</span>

Maximum number of iterations to execute per sample. (Default: 1_000_000_000)




---

### let max_sample_time: [U64](builtin-U64) val
<span class="source-link">[[Source]](src/ponybench/benchmark.md#L64)</span>

Maximum time to execute a sample in Nanoseconds. (Default: 100_000_000)




---

