Industry-Standard Benchmarks for Embedded Systems
EEMBC, an industry alliance, develops benchmarks to help system designers select the optimal processors and understand the performance and energy characteristics of their systems. EEMBC has benchmark suites targeting cloud and big data, mobile devices (for phones and tablets), networking, ultra-low power microcontrollers, the Internet of Things (IoT), digital media, automotive, and other application areas. EEMBC also has benchmarks for general-purpose performance analysis including CoreMark, MultiBench (multicore), and FPMark (floating-point).
MultiBench

MultiBench™ - Performance Suite for Multicore Architectures

Find the strengths and weaknesses of any multicore processor and system:

  • Analyze scalable multicore architectures, memory bottlenecks, thread scheduling support, efficiency of synchronization
  • Measures the impact of parallelization and scalability across both data processing and computationally intensive tasks
  • Provides an analytical tool for optimizing programs for a specific processor
  • Application-focused kernels in more than one hundred workload combinations

MultiBench™ is a suite of benchmarks that allows processor and system designers to analyze, test, and improve multicore processors. It uses three forms of concurrency:

  • Data decomposition: multiple threads cooperating on achieving a unified goal and demonstrating a processor’s support for fine grain parallelism.
  • Processing multiple data streams: uses common code running over multiple threads and demonstrating how well a processor scales over scalable data inputs.
  • Multiple workload processing: shows the scalability of general-purpose processing, demonstrating concurrency over both code and data.

MultiBench combines a wide variety of application-specific workloads with the EEMBC Multi-Instance-Test Harness (MITH), compatible and portable with most any multicore processors and operating systems. MITH uses a thread-based API (POSIX-compliant) to establish a common programming model that communicates with the benchmark through an abstraction layer and provides a flexible interface to allow a wide variety of thread-enabled workloads to be tested.

The 100+ MultiBench workloads can be individually parameterized to vary the amount of concurrency being implemented by the benchmark. By applying incrementally challenging and concurrent workloads, system designers can optimize programs for specific processors and systems, as well as assess the impact of memory bottlenecks, cache coherency, thread scheduling support, and efficiency of synchronization between threads. The wide variety of workloads support judicious monitoring of parameters that highlight the strengths and weaknesses of any multicore processor and system.

The EEMBC Technology Center offers porting, running, and analysis of MultiBench results as one of its testing services.


MultiBench demonstrates a wide variety of performance characteristics:

MultiBench demonstrates a wide variety of performance characteristics

MultiBench Presentation (PDF):

Options for Using EEMBC® Benchmark Software

  1. License one or more benchmark suites
  2. Join the EEMBC Board of Directors
  3. Join application-focused EEMBC subcommittee(s)
  4. Special licensing program for faculty members at colleges and universities.

Request information on becoming a member or licensing benchmark software

Benefits of licensing and membership are summarized in the table below:

Benefit Licensee Board or Member
Access to benchmarks
X
X
Use benchmarks to test processor/system products
X
X
Ability to tune your system for best performance
X
X
Influence selection and design of next generation benchmarks
X
X
Ability to publish or disclose your scores
-
X
Free certifications
-
X
Early access to next-generation benchmarks
-
X
Recognition as a supporting member of an industry-standard organization
-
X
Use certified scores in marketing and advertising promotions
-
X
Network with other industry leaders from partner and competitor companies
-
X