SAN JOSE, Calif. -- Embedded processors are increasingly adopting floating-point units for jobs such as graphics, audio, and motor control. Now they have a benchmark to measure performance on those tasks.
The Embedded Microprocessor Benchmark Consortium (EEMBC) announced FPMark to gauge effort on both 32-bit-single- and 64-bit-double-precision workloads. The suite uses 10 diverse kernels to generate 53 workloads geared for a range of components from low-end microcontrollers to high-end processors.
FPMark creates a suite of metrics useful for engineers trying to optimize the performance of a part or system. It also can be used to generate a single numeric score based on a geometric mean of a suite of scores -- a feature particularly useful for marketing purposes.
The effort was one of the most popular of all EEMBC's work-groups to date, according to Markus Levy, president of the group. About 15 companies participated in developing FPMark, including ARM, Imagination, Intel, Microchip, and Mips.
The group used open-source code for benchmarks such as Linpack, Whetstone, and Livermore Loops as a starting point. It built in single- and double-precision support in a way that lets users compare the results of the two to compare trade-offs in high-performance versus accuracy.
The group also added support for small, medium, and large data sets to serve a wide variety of chips. Some microcontrollers can't run large data sets, and small data sets are not useful for high-end CPUs, Levy noted.
The benchmark defines a standard way to run the tool and prevents compilers from optimizing out of loops in ways that would skew results. It also includes self-verification features so users can make sure the benchmark is running correctly.
Documentation and source code for FPMark is available for $495 or $195 for academics. EEMBC will also provide a Web site for posting FPMark scores.