CoreMark Test: различия между версиями
Строка 73: | Строка 73: | ||
==== Размер кода ==== | ==== Размер кода ==== | ||
Так как код в случае исполнения из QSPI поступает по последовательному каналу и имеет дополнительные циклы ожидания инструкций, то размер кода приложения имеет первостепенную значимость. | |||
{| class="wikitable" | {| class="wikitable" | ||
!Параметр | !Параметр | ||
Строка 90: | Строка 91: | ||
|13424 | |13424 | ||
|} | |} | ||
Важно понимать так же, что кэш инструкций поступающих через QSPI составлят 1кБ, а кэш данных - . Важно отметить, что эта память находится в блоке SPIFI, а не в самом ядре процессора. | |||
==== Попытка объективного позиционирования ==== |
Версия от 05:56, 27 июля 2023
Введение
Из wikipedia.org: CoreMark — набор синтетических тестов производительности для измерения скорости центральных процессоров во встраиваемых системах. Создан в 2009 году Shay Gal-On из компании EEMBC в качестве замены для антикварного бенчмарка Dhrystone 1984 года. Код тестов написан на языке программирования Си и содержит реализации таких алгоритмов: обработка связных списков (поиск и сортировка), обработка матриц (несколько матричных операций), машина состояний (определение, что входной символьный поток содержит действительные числа в десятичной записи), подсчет суммы CRC.
Более подробно о самом тесте можно почитать на https://ru.wikipedia.org/wiki/CoreMark
Измерения
Все тесты были проведены при частоте 32МГц. Код теста скомпилирован в GCC 10.
Источник кода | Кэш | CoreMark/-O0 | CoreMark/-O1 | CoreMark/-O2 | CoreMark/-O3 | CoreMark/-Os | CoreMark/-Ofast |
---|---|---|---|---|---|---|---|
QSPI, 4 бит | да | 6.1 | 31 | 35 | 35 | 31 | 35 |
QSPI, 1 бит | да | 3.7 | 29 | 29 | 23 | 26 | 26 |
QSPI, 4 бит | нет | 1.2 | 3 | 3.6 | 3.9 | 3.9 | 2.3 |
QSPI, 1 бит | нет | 0.4 | 1.1 | 1.3 | 1.4 | 0.9 | 1.4 |
INT RAM | NA | не помещает. | 34 | 40 | 40 | 32 | 40 |
INT FLASH | NA | не помещает. | не помещает. | не помещает. | не помещает. | не помещает. | не помещает. |
Размер кода
Так как код в случае исполнения из QSPI поступает по последовательному каналу и имеет дополнительные циклы ожидания инструкций, то размер кода приложения имеет первостепенную значимость.
Параметр | CoreMark/-O0 | CoreMark/-O1 | CoreMark/-O2 | CoreMark/-O3 | CoreMark/-Os | CoreMark/-Ofast |
---|---|---|---|---|---|---|
Размер кода | 17024 | 10240 | 10992 | 13328 | 8960 | 13424 |
Важно понимать так же, что кэш инструкций поступающих через QSPI составлят 1кБ, а кэш данных - . Важно отметить, что эта память находится в блоке SPIFI, а не в самом ядре процессора.