У меня есть встроенная машина на базе ARM на плате S3C2416. В соответствии с имеющимися у меня спецификациями должен быть ARM9 533 МГц (ARM926EJ-S в соответствии с /proc/cpuinfo
), однако работающее на нем программное обеспечение "чувствует себя" медленно, по сравнению с тем же программным обеспечением на моем телефоне Android с ARM 528 МГц ЦПУ.
/proc/cpuinfo
сообщает мне, что BogoMIPS - 266.24. Я знаю, что я не должен доверять BogoMIPS в отношении производительности ("Bogo" = фальшивый), однако я хотел бы измерить фактическую скорость процессора. На x86 я мог использовать инструкцию rdtsc
чтобы получить счетчик меток времени, подождать секунду (sleep (1)), снова прочитать счетчик, чтобы получить приблизительную оценку скорости процессора, и, согласно моему опыту, это значение было достаточно близко к реальной скорости процессора.
Как я могу найти фактическую скорость процессора данного процессора ARM?
Обновить
Я нашел этот простой калькулятор Pi, который я скомпилировал как для своего телефона Android, так и для платы ARM. Результаты приведены ниже:
S3C2416
# cat /proc/cpuinfo
Processor : ARM926EJ-S rev 5 (v5l)
BogoMIPS : 266.24
Features : swp half fastmult edsp java
...
#./pi_arm 10000
Calculation of PI using FFT and AGM, ver. LG1.1.2-MP1.5.2a.memsave
...
8.50 sec. (real time)
Android
# cat /proc/cpuinfo
Processor : ARMv6-compatible processor rev 2 (v6l)
BogoMIPS : 527.56
Features : swp half thumb fastmult edsp java
# ./pi_android 10000
Calculation of PI using FFT and AGM, ver. LG1.1.2-MP1.5.2a.memsave
...
5.95 sec. (real time)
Таким образом, кажется, что ARM926EJ-S медленнее, чем мой телефон на Android, но не в два раза медленнее, чем я ожидал по показателям BogoMIPS. Я все еще не уверен насчет тактовой частоты процессора ARM9.