Coremark

Coremark

CoreMark is a benchmark that aims to measure the performance of central processing units (CPU) used in embedded systems. It was developed in 2009 by Shay Gal-On at EEMBC and is intended to become an industry standard, replacing the antiquated Dhrystone benchmark. The code is written in C code and contains implementations of the following algorithms: list processing (find and sort), Matrix (mathematics) manipulation (common matrix operations), state machine (determine if an input stream contains valid numbers), and CRC.

Contents

Issues Addressed by CoreMark

The CRC algorithm serves a dual function; it provides a workload commonly seen in embedded applications and ensures correct operation of the CoreMark benchmark, essentially providing a self-checking mechanism. Specifically, to verify correct operation, a 16bit CRC on the data contained in elements of the linked-list.

To ensure compilers cannot pre-compute the results at compile time every operation in the benchmark to derives a value that is not available at compile time. Furthermore, all code used within the timed portion of the benchmark is part of the benchmark itself (no Library (computing) calls).

CoreMark vs. Dhrystone

CoreMark draws on the strengths that made Dhrystone so resilient - it is small, portable, easy to understand, free, and displays a single number benchmark score. Unlike Dhrystone, CoreMark has specific run and reporting rules, and was designed to avoid the well understood issues that have been cited with Dhrystone.

Major portions of Dhrystone are susceptible to a compiler’s ability to optimize the work away; thus it is more a compiler benchmark then a hardware benchmark. This also makes it very difficult to compare results when different compilers/flags are used.

Library calls are made within the timed portion of Dhrystone. Typically, those library calls consume the majority of the time consumed by the benchmark. Since the library code is not part of the benchmark, it is difficult to compare results if different libraries are used. Guidelines exist on how to run Dhrystone but since results are not certified or verified, they are not enforced. There is no standardization on how Dhrystone results should be reported, with various formats in use (DMIPS, Dhrystones per second, DMIPS/MHz)

Results

CoreMark results can be found on the CoreMark web site, and on processor data sheets. Results are in the following format:

CoreMark 1.0 : N / C [/ P] [/ M]

  • N Number of iterations per second with seeds 0,0,0x66,size=2000)
  • C Compiler version and flags
  • P Parameters such as data and code allocation specifics
  • M - Type of Parallel algorithm execution (if used) and number of contexts

For example: CoreMark 1.0 : 128 / GCC 4.1.2 -O2 -fprofile-use / Heap in TCRAM / FORK:2

See also

References

EEMBC launches MIPS busting benchmark, New Electronics magazine, Graham Pitcher, August 2009.
Roving Reporter: Benchmarks: An inside look at CoreMark, Intel Embedded Design Center - Hardware Blog, Don Dingee, OpenSystems Media, by special arrangement with Intel ECA, August 2009.
ARM Announces Support For EEMBC CoreMark Benchmark, ARM Holdings plc, June 2009.
CoreMark - Open-Source-Benchmark von EEMBC, elektronik net.de, Andrea Gillhuber, February 2009.
Benchmarks Atom vs iPad A4 vs iPhone 3GS ARM Cortex and much more..., EEE Journal
Published Kal-El performance: is NVIDIA SoC truly faster than a Core2?
Imagining a quad-core Motorola Xoom, CNet News, February 2011.

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • EEMBC — EEMBC, the Embedded Microprocessor Benchmark Consortium, is a non profit organization formed in 1997 with the aim of developing meaningful performance benchmarks for the hardware and software used in embedded systems. The goal of its members is… …   Wikipedia

  • Dhrystone — is a synthetic computing benchmark program developed in 1984 by Reinhold P. Weicker intended to be representative of system (integer) programming. The Dhrystone grew to become representative of general processor (CPU) performance. The name… …   Wikipedia

  • Dhrystone — Dhrystone  синтетический тест производительности компьютеров, разработанный в 1984 году Reinhold P. Weicker. Нацелен на тестирование системной (целочисленной) производительности процессоров общего назначения. Сходный тест  Whetstone.… …   Википедия

  • Benchmark (computing) — This article is about the use of benchmarks in computing, for other uses see benchmark. In computing, a benchmark is the act of running a computer program, a set of programs, or other operations, in order to assess the relative performance of an… …   Wikipedia

  • Fleming Companies, Inc — Fleming Companies, often shortened to Fleming Cos, was a Texas based supplier of consumer package goods to retailers in the United States.HistoryPre BankruptcyFleming Cos was founded as Lux Mercantile in Topeka, Kansas in 1915 by O.A. Fleming,… …   Wikipedia

  • LEON — est un processeur 32 bit RISC open source, compatible SPARC V8 (1987) développé par l ingénieur suédois Jiri Gaisler pour l ESA. Il est téléchargeable sous licence LGPL (version 2) et GPL (version 3). Une version tolérante aux erreurs ( Fault… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”