Just announced by the Embedded Microprocessor Benchmark Consortium ( EEMBC), FPMark contains single (32-bit) and double (64-bit) precision workloads, as well as a mixture of small to large data sets to support microcontrollers to high-end processors, respectively. The EEMBC FPMark allows users to evaluate FPU performance on the basis of consistent and controlled data, delivering honest, reliable, and unbiased metrics to serve the needs of processor vendors, compiler vendors, and system developers.
Using floating-point (FP) representation enables more accurate calculations of fractional values than fixed-point numbers (integers) because exponents allow the decimal point to shift. Moreover, floating-point math makes numerical computation much easier and many algorithms implemented with floating point take fewer cycles to execute than fixed-point code (assuming similar precision). To take advantage of this efficiency, many embedded processors include hardware floating-point units (FPUs) to support these higher levels of precision.
The EEMBC FPMark Suite uses 10 diverse kernels to generate 53 workloads, each of which self-verify to ensure correct execution of the benchmark. These workloads are built on the same infrastructure as EEMBC MultiBench, allowing the user to launch multiple contexts and demonstrate multicore scalability, as well as greatly simplifying the effort required to port the benchmarks to bare metal or implementations running Linux. The kernels in FPMark include a mixture of general-purpose algorithms (such as Fast Fourier Transform, linear algebra, ArcTan, Fourier coefficients, Horner’s method, and Black Scholes) and complex algorithms (such as a neural network routine, a ray tracer, and an enhanced version of Livermore Loops).
Similar to EEMBC CoreMark, certified scores are not required for FPMark, but EEMBC will promote the use of certified scores for members to ensure high-quality results.
Embedded Microprocessor Benchmark Consortium; www.eembc.org