Embench

From HandWiki

Embench is a suite of portable, free and open-source benchmarks, for benchmarking embedded systems. Its initial version, aimed at deeply embedded systems with no operating system or floating point hardware was announced in June 2019, with version 0.5 released in February 2020.[1][2] Embench is a project of the Free and Open Source Silicon Foundation, chaired by Prof David Patterson of the University of California, Berkeley. Embench is conceived as eventually comprising several versions of the benchmark suite aimed at different classes of embedded processor, from tiny 8- or 16-bit single core integer microcontrollers, to large multi-core 64-bit processors with comprehensive floating point support.

General principles

Embench is based on 7 principles, summarized in the original announcement[1] as:

  • Embench must be free
  • Embench must be easy to port and run
  • Embench must be a suite of real programs
  • Embench must have a supporting organization to maintain it
  • Embench must report a single summarizing score
  • Embench should summarize using geometric mean and geometric standard deviation
  • Embench must involve both academia and industry

In particular having a supporting organization means the benchmarks can be refreshed on a regular basis, to minimize the opportunity for compilers gaming the results with specific optimizations.

The benchmark suites

At present there is one benchmark suite, Embench IoT, targeting small microcontrollers with no operating system or hardware floating point support.

Embench IoT

Embench IoT is a suite of 19 programs which can be run in no more than 64kB of memory and with no operating system or floating point hardware support. It builds on earlier benchmark suites, notably BEEBS. Version 0.5 was released in June 2020 at the Embedded World Conference in Nürnberg, Germany.[2]

Embench IoT results for a number of architectures are held in the embench-iot-results repository on GitHub.

References

External links