What is EEMBC?
EEMBC (Embedded Microprocessor Benchmark Consortium,
pronounced “embassy”) is a non-profit consortium,
funded by over 40 member companies. The goal of EEMBC
is to provide independently certified benchmark scores
relevant to deeply embedded processor applications.
Members of the consortium include: ARM, AMD, IBM, Intel,
LSI Logic, MIPS, Motorola, National Semi, NEC, TI,
Toshiba and more. Tensilica is a member of EEMBC.
What are the EEMBC Benchmarks?
The are five different EEMBC benchmark suites:
 |
• Consumer
• Networking
• Telecom
• Office Automation
• Automotive |
Each suite is comprised of a range (five to sixteen)
of individual benchmark tasks representative of that
product category. Example: the consumer benchmark suite
includes algorithms for image compression, image filtering,
color conversion, and other tasks common to consumer
digital imaging products. Scores for EEMBC are as an
aggregated geometric mean score normalized to other
processors – known as the ConsumerMARK,
TeleMARK and NetMARK scores.
Individual benchmark test reports detail the number
of iterations of a benchmark routine in 1 second of
operating time.
Two Metrics: Out-of-box -vs- Optimized
EEMBC supports two kinds of performance scores for
certified results. The Out-of-the
Box score represents performance results from
taking the EEMBC C code “as is”, compiling,
and measuring the performance. No code optimization
or assembly coding allowed. Optimized – or “Full-Fury”– results
allow the use of C coding changes and assembly coding
to accelerate performance.
Optimizing Conventional Processors
For conventional embedded processors the only good
avenue available for optimization is to laboriously
hand-tune assembly code — not a task for the
faint of heart, or the programmer unfamiliar with the
micro-architecture of the processor. This is, in essence,
changing the code to fit the processor.
Optimizing with Xtensa Cores
To get optimal performance in an application using
the Xtensa processor, you don’t start by changing
your application code — you begin by changing
the Xtensa processor to fit the application. Using
the same development path used by our customers, Tensilica
used the Xtensa processor generator, the code profiling
tools, and the TIE Compiler to create three optimal
Xtensa configurations – one each for Consumer,
Telecom and Network – to ideally suit the EEMBC
benchmarks. Tensilica has certified EEMBC results for
the Xtensa processor for the Consumer, Telecom and
Networking benchmarks in both optimized and out-of-the-box
categories, and out-of-the-box results for the Office
Automation suite.
Illustrations conceptual: see EEMBC report for more
details. Clock rates: post-layout extracted data, worst
case conditions, 0.13 micron
More About EEMBC
EEMBC,
the Embedded Microprocessor Benchmark Consortium, develops
and certifies real-world benchmarks and benchmark scores
to help designers select the right embedded processors
for their systems. Every processor submitted for EEMBC® benchmarking
is tested for parameters representing different workloads
and capabilities in communications, networking, consumer,
office automation, automotive/industrial, embedded
Java, and microcontroller-related applications. With
members including leading semiconductor, intellectual
property, and compiler companies, EEMBC establishes
benchmark standards and provides certified benchmarking
results through the EEMBC Certification Labs (ECL)
in Texas and California.
EEMBC is a registered trademark
of the Embedded Microprocessor Benchmark Consortium.
|