豹哥嵌入式講堂:ARM知識概要雜輯(4)- Cortex-M處理器性能指標
1.處理器的性能指標
用於評價CPU的性能指標非常多,不同的性能側重點下的測試標準可能得出的指標值不同,下面介紹嵌入式行業廣泛使用的兩個經典的測試標準。
1.1 Dhrystone標準
Dhrystone是由Reinhold P. Weicker在1984年提出來的一個基準測試程序,其主要目的是測試處理器的整數運算和邏輯運算的性能。
Dhrystone程序最初用Ada語言發布,後來Rick Richardson為Unix開發了用C語言編寫的Version 1.1,這個版本也成功的推動了Dhrystone的廣泛應用。Dhrystone程序的最新版本是1988年更新的Version 2.1。
Dhrystone標準的測試方法很簡單,就是單位時間內跑了多少次Dhrystone程序,其指標單位為DMIPS/MHz。MIPS是Million Instructions Per Second的縮寫,每秒處理的百萬級的機器語言指令數。DMIPS中的D是Dhrystone的縮寫,它表示了在Dhrystone標準的測試方法下的MIPS。
1.2 CoreMark標準
CoreMark是由嵌入式微處理器基準評測協會EEMBC的Shay Gla-On於2009年提出的一項基準測試程序,其主要目標是測試處理器核心性能,這個標準被認為比陳舊的Dhrystone標準更有實際價值。
CoreMark程序使用C語言寫成,包含如下的運算法則:列舉(尋找並排序),數學矩陣操作(普通矩陣運算)和狀態機(用來確定輸入流中是否包含有效數字),最後還包括CRC(循環冗余校驗)。CoreMark程序的最新版本是Version 1.0。
CoreMark標準的測試方法也很簡單,就是在某配置參數組合下單位時間內跑了多少次CoreMark程序,其指標單位為CoreMark/MHz。CoreMark數字越高,意味著性能更高。
2. Cortex-M處理器的性能對比
ARM公司提供了Cortex-M系列處理器的官方性能對比數據,包括Dhrystone和CoreMark標準,詳見下圖:
關於各處理器具體指標數值如下:
CoreType | Dhrystone | CoreMark |
---|---|---|
(DMIPS/MHz) | (CoreMark/MHz) | |
Cortex-M0 | 0.84 | 2.33 |
Cortex-M0+ | 0.94 | 2.42 |
Cortex-M3 | 1.25 | 3.32 |
Cortex-M4 | 1.25 | 3.40 |
Cortex-M7 | 2.14 | 5.04 |
參考資料:
[1]. [ARM嵌入式系統開發]第一章之Dhrystone
[2]. 測試cpu的簡單工具-dhrystone
[3]. 處理器性能測試基準程序(CoreMark)簡介
[4]. Cortex-M7 Launches:Embedded, IoT and Wearables
[5]. CSDN-markdown 表格樣式設置(跨行表格,背景色等)
豹哥嵌入式講堂:ARM知識概要雜輯(4)- Cortex-M處理器性能指標