CoreMark
CoreMark — набор синтетических тестов производительности для измерения скорости центральных процессоров во встраиваемых системах. Создан в 2009 году Shay Gal-On из компании EEMBC в качестве замены для антикварного бенчмарка Dhrystone 1984 года. Код тестов написан на языке программирования Си и содержит реализации таких алгоритмов: обработка связных списков (поиск и сортировка), обработка матриц (несколько матричных операций), машина состояний (определение, что входной символьный поток содержит действительные числа в десятичной записи), подсчет суммы CRC.
Задачи CoreMark
Алгоритм CRC в составе бенчмарка используется для двух целей: он является достаточно типичным для приложений на встраиваемых компьютерах, но также используется для подтверждения корректности работы всех тестов пакета CoreMark. В частности, для проверки результата сортировки, 16-битная сумма CRC рассчитывается от всех данных в связном списке.
Чтобы избежать предвычисления результатов теста во время оптимизирующей компиляции, каждый тест в бенчмарке использует значение, недоступное на момент компиляции. Также, весь код, время исполнения которого измеряется, полностью предоставлен авторами бенчмарка (не содержит каких-либо вызовов к системным библиотекам).
Сравнение CoreMark и устаревшего Dhrystone
CoreMark опирается на принципы, которые легли в основу традиционного Dhrystone: тест небольшой, легко переносимый, простой для понимания, бесплатный для использования и предоставляет единое число, описывающее производительность. Однако в отличие от Dhrystone, в тестах CoreMark имеются правила запуска и публикации результатов, также авторам CoreMark удалось избежать ряда широко известных проблем, связанных с Dhrystone.
Большие участки теста Dhrystone могут быть оптимизированы современными компиляторами, из-за чего тот тест в меньшей степени был тестом производительности оборудования. Это также усложняло сравнение между разными компиляторами или между сборками с разными флагами компиляции.
В измеряемом участке Dhrystone производятся вызовы библиотек, и обычно код библиотек занимает большую часть времени работы бенчмарка. Поскольку библиотеки не являются частью бенчмарка, усложняется сравнение результатов между разными системами и реализациями библиотек.
Существуют некоторые руководства по запуску Dhrystone, но поскольку результаты теста не сертифицировались и не проверялись, эти руководства не всегда применялись. Отсутствовал стандарт на публикацию результатов Dhrystone и использовались различные производные величины: DMIPS, «Dhrystones per second», DMIPS/MHz.
Публикация результатов CoreMark
Список результатов CoreMark ведется на сайте проекта CoreMark Архивная копия от 12 сентября 2017 на Wayback Machine (EEMBC). Результаты имеют следующий формат:
CoreMark 1.0 : N / C / P / M
- CoreMark 1.0 — версия теста
- N — количество итераций в секунду с параметрами запуска «0,0,0x66,size=2000»
- C — версия компилятора и его флаги
- P — указание на специфику размещения кода и данных
- M — тип параллельного исполнения (если использовалось) и количество контекстов (потоков, процессов)
Например:
CoreMark 1.0 : 128 / GCC 4.1.2 -O2 -fprofile-use / Heap in TCRAM / FORK:2
См. также
- Business Applications Performance Corporation (BAPCo)
- Embedded Microprocessor Benchmark Consortium (EEMBC)
- Standard Performance Evaluation Corporation (SPEC)
- Transaction Processing Performance Council (TPC)
Литература
- Shay Gal-On, Markus Levy, «Exploring CoreMark — A benchmark maximizing simplicity and efficacy.» / The Embedded Microprocessor Benchmark Consortium (2012).
- CoreMark — реальный способ определить производительность ЦП Архивная копия от 11 сентября 2017 на Wayback Machine (перевод)
Ссылки
- Раздел CoreMark на сайте EEMBC Архивная копия от 4 сентября 2018 на Wayback Machine (англ.)
- User group for CoreMark Архивная копия от 7 ноября 2012 на Wayback Machine (англ.)
- EEMBC launches MIPS busting benchmark, New Electronics magazine, Graham Pitcher, August 2009.
- Roving Reporter: Benchmarks: An inside look at CoreMark Архивная копия от 12 сентября 2017 на Wayback Machine, 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? Архивная копия от 29 декабря 2018 на Wayback Machine
- Imagining a quad-core Motorola Xoom Архивная копия от 25 марта 2012 на Wayback Machine, CNet News, February 2011.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.