Счетчик циклов ARM926EJ-S - PullRequest
       51

Счетчик циклов ARM926EJ-S

2 голосов
/ 10 июня 2011

Я использую ARM926EJ-S и пытаюсь выяснить, может ли ARM выдавать (например, читаемый регистр) счетчик циклов ЦПУ.Я думаю, что # будет представлять количество циклов с момента включения питания процессора.

В моей системе у меня есть только внешние RTC / Таймеры с низким разрешением.Я хотел бы иметь возможность использовать таймер высокого разрешения.

Заранее большое спасибо!

Ответы [ 2 ]

0 голосов
/ 11 июня 2011

У вас, вероятно, есть только два варианта:

  • Используйте точный симулятор цикла инструкций;проблема здесь в том, что эффективное моделирование периферийных устройств и внешних стимулов может быть сложным или невозможным.

  • Используйте аппаратный таймер периферийного устройства.В большинстве случаев вы не сможете запустить такой таймер на типичной тактовой частоте ядра ARM9, и при обслуживании таймера будут возникать накладные расходы по обе стороны от периода времени, но его можно использовать для выполнениявремя на больших или более длинных секциях кода, которые могут быть более практичными, чем счетчик циклов.

Хотя счетчик циклов может быть несколько масштабируем для разных тактовых частот, он по-прежнему ограничен состояниями памяти и ожидания ввода / вывода, поэтому, возможно, он не так полезен, как может показаться метрикой производительностикроме как на микроуровне анализа, и больший прирост производительности, как правило, можно получить, взяв более широкий взгляд.

0 голосов
/ 10 июня 2011

Arm-9 не оборудован PMU (блоком мониторинга производительности), который входит в семейство Cortex.PMU описывается здесь .Ядро linux поставляется с поддержкой использования PMU для тестирования производительности.См. здесь для документации набора инструментов perf.

Немного не уверен насчет arm-9, нужно копать немного больше ...

...