---
name: "bench_intro"
section: "3tcl"
platform: "linux"
package: "tcllib"
version: "2.0+dfsg-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/bench_intro"
---

# bench\_intro(3tcl)

bench introduction

```

```

## NAME

bench\_intro - bench introduction

## DESCRIPTION

The *bench* (short for *benchmark tools*), is a set of related, yet different, entities which are working together for the easy creation and execution of performance test suites, also known as benchmarks. These are

- \[1\]

  A tcl based language for the declaration of test cases. A test case is represented by a tcl command declaring the various parts needed to execute it, like setup, cleanup, the commands to test, etc.

- \[2\]

  A package providing the ability to execute test cases written in that language.

Which of the more detailed documents are relevant to the reader of this introduction depends on their role in the benchmarking process.

- \[1\]

  A *writer* of benchmarks has to understand the bench language itself. A beginner to bench should read the more informally written *bench language introduction* first. Having digested this the formal *bench language specification* should become understandable. A writer experienced with bench may only need this last document from time to time, to refresh her memory.

- \[2\]

  A *user* of benchmark suites written in the *bench* language has to know which tools are available for use. At the bottom level sits the package **bench**, providing the basic facilities to read and execute files containing benchmarks written in the bench language, and to manipulate benchmark results.

## HISTORICAL NOTES

This module and package have been derived from Jeff Hobbs' **tclbench** application for the benchmarking of the Tcl core and its ancestor "*runbench.tcl*".

## BUGS, IDEAS, FEEDBACK

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category *bench* of the *Tcllib Trackers* \[http://core.tcl.tk/tcllib/reportlist\]. Please also report any ideas for enhancements you may have for either package and/or documentation.

When proposing code changes, please provide *unified diffs*, i.e the output of **diff -u**.

Note further that *attachments* are strongly preferred over inlined patches. Attachments can be made by going to the **Edit** form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.

## SEE ALSO

bench, bench\_lang\_faq, bench\_lang\_intro, bench\_lang\_spec

## KEYWORDS

bench language, benchmark, performance, testing

## CATEGORY

Benchmark tools

## COPYRIGHT

```
Copyright (c) 2007 Andreas Kupries <andreas_kupries@users.sourceforge.net>
```
