The following is a brief summary of all benchmarks either in development or available for licensing from EEMBC. Benchmarks can be grouped into the following categories:
- Ultra-Low Power and Internet of Things
- Heterogeneous Compute
- Single-core Processor Performance
- Multi-core Processor Performance
- Phone and Tablet
Ultra-Low Power (ULP) and Internet of Things
The ULP subcommittee focuses on power and energy. The scores associated with the benchmarks are derived from measurements taking using the STMicroelectronics PowerShield.
In 2014, ULPMark started with the ULPmark-CoreProfile (or -CP for short). The benchmark runs an active workload for a period of time, then goes to sleep. The energy measurement during the duty cycle reflects a real-life test of embedded low power beyond a simple sleep number.
The ULPMark-PeripheralProfile (or -PP for short) launched in 2016 examines the energy cost of four peripherals: real-time clock, pulse-width modulation, analog-to-digital conversion, and SPI communication.
IoTMark builds on ULPMark by adding a sensor emulation module (the IO Manager) and a radio gateway emulator (the Radio Manager). The execution profile incorporates the types of behavior an IoT edge node would perform. The first benchmark in this series, IoTMark-BLE, uses a Bluetooth Low Energy (BLE) radio as the gateway and an I2C device as the sensor.
Security comes at a cost, both in programming complexity and energy. As IoT secure becomes even more important, designers must assess the energy cost of the design. SecureMark provides security-specific profiles to assist in this analysis. SecureMark-TLS provides a method to account for the cost of a TLS handshake using elliptic curve key exchange and signing, as well as AES128 CCM & ECB for a ciphers and SHA256 for hashing.
EEMBC's original benchmarks focused on single core 8- and 16-bit embedded processors. These benchmarks aren't suitable for todays mixed-core heterogeneous platforms deployed for high-performance computation. The benchmarks in this category differ from single-core or symmetric multi-core performance benchmarks EEMBC has developed in the past, in that they provide more sophisticated frameworks for assymmetric compute.
ADASMark focuses benchmarking a typical vision pipeline that may be used in advanced driver-assistance systems (ADAS) platforms. Built on OpenCL, the pipeline may be distributed among CPUs, GPUs and DSPs.
Machine Learning on the edge has become a reality. This benchmark strives to categories and analyze several broad classes of popular ML neural networks on embedded edge-compute platforms.
Single-core Processor Performance
The original EEMBC benchmarks, these suites are still in popular use today for compiler testing, regressions in new embedded core RTL, and academic analysis.
A simple, yet sophisticated test of the functionality of a processor core; it produces a single-number score allowing users to make quick comparisons between processors.
The algorithms in the benchmark analyze processor performance in automotive, industrial, and general-purpos applications.
DENBench™ (Digital Entertainment)
This benchmark addresses digital entertainment products such as smartphones, MP3 players, digital cameras, TV set-top boxes, and in-car entertainment systems.
Routers and switches can benefit from this benchmark's analysis of performance associated with moving packets in networking applications.
OABench™ (Office Automation)
This benchmark approximates office automation tasks performed by processors in printers, plotters, and other office automation systems that handle text and image processing tasks.
The telecommunications suite approximates performance of processors in modem, xDSL, and related fixed-telecom applications.
Symmetric Multi-core Processor Performance
Our multicore suites are built on the multi-instance test harness (MITH) which exploits the POSIX pthreads interace for testing both context- and worker-level parallelism.
CoreMark-Pro builds on the original CoreMark benchmark by adding context-level parallelism and 7 new workloads which cover integer and floating-point performance.
The original AutoBench benchmark is back in parallel form, with more workloads consistenting on aggregated tasks (combinations of AutoBench-1.1 kernels) that reflect the increase in compute demand of automotive electronic control units (ECU).
FPMark focuses entirely on single- and double-precision floating-point workloads. From Gauss-Jordan Elimination to Black Schols computation, FPMark covers a broad range of intense floating point analysis.
To analyze worker-level parallelism in addition to context-level, MultiBench contains integer workloads that scale in both directions.
Phone and Tablet
Measure browser performance with BrowsingBench, a collection of webpages loaded using a local Nginx server over a wired LAN connection.
Available for free in the Android Play Store, AndeBench is an industry-accepted method of evaluating Android platform performance.
EEMBC is constantly striving to innovate new benchmarks to address a rapidly changing embedded world. Stay tuned in to our development by signing up for our newsletter, the BenchPress!