本文來源電子發燒友社區,作者:李紅潔, 帖子地址:https://bbs.elecfans.com/jishu_2288293_1_1.html
前言
準備工作
測試結果
結果對比
浮點運算性能測試whetstone修改代碼
編譯運行
測試結果
結果對比
Linpack浮點
編譯運行
測試結果
結果對比
livermore數值計算修改代碼
編譯運行
測試結果
結果對比
前言
設置虛擬機共享目錄
cp dhrystone2 dhrystone2o3 /mnt/share
即可在windows下的E:virtualboxshare目錄下看到復制過來的文件。
假設程序復制到了windows下的e:/下
lcd e:/
cd /home/root
put livermore將windows下程序導入到開發板的/home/root目錄下
chmod +x livermore
./livermore執行
能按照https://bbs.elecfans.com/jishu_2287978_1_1.html介紹的進行應用開發
下載代碼
wgethttp://www.roylongbottom.org.uk/classic_benchmarks.tar.gz
tar -xvf classic_benchmarks.tar.gz
整數運算性能測試Dhrystone
Dhrystone是于1984年由Reinhold P. Weicker設計的一套綜合的基準程序,該程序用來測試CPU(整數)計算性能。其輸出結果為每秒鐘運行Dhrystone的次數,即每秒鐘迭代主循環的次數。
修改代碼
代碼結構
代碼位于source_code文件夾下
common_64bit/
common_32bit
|
//getSecs()
local_time()
start_time()
end_time()
getDetails()
|
|
|
|
|
ldhrystone2/dhry_2.c
|
算法無需修改
|
|
|
|
|
ldhrystone2/dhry_1.c
|
main按需修改
|
|
|
|
|
l將common_64bit/cpuidh.h復制到dhrystone2下
l將common_64bit/cpuidc64.c復制到dhrystone2下
1.注釋掉int getDetails()函數,我們這里不獲取CPU對應的信息。
l修改dhry_1.c
因為沒有實現getDetails,注釋掉如下代碼.
#if 0
getDetails();
for (i=1; i<10; i++)
{
printf("%sn", configdata);
}
printf("n");
fprintf (Ap, " #####################################################nn");
for (i=1; i<10; i++)
{
fprintf(Ap, "%s n", configdata);
}
fprintf (Ap, "n");
printf("##########################################n");
#endif
如下地方語法錯誤
#endif "Register option Selected."改為
#endif // "Register option Selected."
前面添加接口函數申明
void local_time();
void start_time();
void end_time();
兩處printf ("Ptr_Comp: * %dn", (int) Ptr_Glob->Ptr_Comp);改為
printf ("Ptr_Comp: * %pn", Ptr_Glob->Ptr_Comp);
編譯運行
$CC *.c -o dhrystone2o3 -O1
$CC *.c -o dhrystone2o3 -O3
將程序導入到開發板運行
測試結果會添加到文件Dhry.txt中
-O1
-O3
DMIPS
3078.98
4452.61
http://www.roylongbottom.org.uk/dhrystone%20results.htm
可以看到和Athlon 64接近。
代碼結構
代碼位于source_code文件夾下
common_64bit/
common_32bit
CPU相關信息獲取和時間測量接口
//getSecs()
local_time()
start_time()
end_time()
getDetails()
whetstone/whets.c
main按需修改
l將common_64bit/cpuidh.h復制到whetstone下
l將common_64bit/cpuidc64.c復制到whetstone下
1.注釋掉int getDetails()函數,我們這里不獲取CPU對應的信息。
lWhets.c
注釋掉以下代碼
#if 0
getDetails();
for (i=1; i<10; i++)
{
printf("%sn", configdata);
}
local_time();
printf("n");
printf("##########################################n");
printf("%s Precision C Whetstone Benchmark %s, %sn", Precision, opt, timedaa
y);
#endif
前面添加接口函數申明
void local_time();
void start_time();
void end_time();
在#include "cpuidh.h"后包含math.h
#include "cpuidh.h"
#include
fprintf (outfile, " %9.3f %9.3fn",
loop_mops[section], loop_time[section], results[section]);
改為
fprintf (outfile, " %9.3f %9.3f %9.3fn",
loop_mops[section], loop_time[section], results[section]);
$CC *.c -o whetstone -lm -O1
$CC *.c -o whetstoneo3 -lm -O3
將程序導入到開發板運行
測試結果會記錄到文件whets.txt中
-O1
-O3
MWIPS
1369.125
1931.551
http://www.roylongbottom.org.uk/whetstone%20results.htm
看到和Core 2 Duo 1 CP相當
Linpack是國際上使用最廣泛的測試高性能計算機系統浮點性能的基準測試。通過對高性能計算機采用高斯消元法求解一元N次稠密線性代數方程組的測試,評價高性能計算機的浮點計算性能。Linpack的結果按每秒浮點運算次數(flops)表示。
修改代碼
代碼結構
代碼位于source_code文件夾下
common_64bit/
common_32bit
CPU相關信息獲取和時間測量接口
//getSecs()
local_time()
start_time()
end_time()
getDetails()
linpack/linpack.c
main按需修改
l將common_64bit/cpuidh.h復制到linpack下
l將common_64bit/cpuidc64.c復制到linpack下
1.注釋掉int getDetails()函數,我們這里不獲取CPU對應的信息。
llinpack.c
注釋掉以下代碼
#if 0
getDetails();
for (i=1; i<10; i++)
{
printf("%sn", configdata);
}
printf("n");
printf("##########################################n");
#endif
前面添加接口函數申明
void local_time();
void start_time();
void end_time();
在#include "cpuidh.h"后包含string.h
#include "cpuidh.h"
#include
main原型函數添加返回類型int
$CC *.c -o linpack -O1
$CC *.c -o linpacko3 -O3
將程序導入到開發板運行
測試結果會記錄到文件Linpack.txt中
-O1
-O3
MFLOPS
240.57
460.94
http://www.roylongbottom.org.uk/linpack%20results.htm
和Pentium 4相當
代碼結構
代碼位于source_code文件夾下
common_64bit/
common_32bit
CPU相關信息獲取和時間測量接口
//getSecs()
local_time()
start_time()
end_time()
getDetails()
livermore_loops/lloops.c
main按需修改
l將common_64bit/cpuidh.h復制到livermore_loops下
l將common_64bit/cpuidc64.c復制到livermore_loops下
1.注釋掉int getDetails()函數,我們這里不獲取CPU對應的信息。
llloops.c
注釋掉以下代碼
#if 0
getDetails();
for (i=1; i<10; i++)
{
printf("%sn", configdata);
}
printf("n");
fprintf (outfile, " #####################################################n\
n");
for (i=1; i<10; i++)
{
fprintf(outfile, "%s n", configdata);
}
fprintf (outfile, "n");
#endif
前面添加接口函數申明
void local_time();
void start_time();
void end_time();
在#include "cpuidh.h"后包含string.h
#include "cpuidh.h"
#include
main原型函數添加返回類型int
$CC *.c -o livermore -lm
$CC *.c -o livermoreo3 -lm -O3
將程序導入到開發板運行
測試結果會記錄到文件LLloops.txt中
-O1
-O3
MFLOPS
174.5
/
http://www.roylongbottom.org.uk/livermore%20loops%20results.htm
與Celeron A相當
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
PHYTEC
+關注
關注
0文章
19瀏覽量
3676 -
開發板試用
+關注
關注
3文章
301瀏覽量
2124
發布評論請先 登錄
相關推薦
恩智浦i.MX 91生態合作伙伴最新開發板資源
恩智浦i.MX 91應用處理器系列能夠快速實現基于Linux的經濟高效的邊緣應用程序。i.MX 91處理器在保持實惠價格的同時,融合了高性能處理、安全性和高能效,并且為i.MX 93應用處理器系列提供了全面的硬件和軟件可擴展性。
i.MX Linux開發實戰指南—基于野火i.MX系列開發板
電子發燒友網站提供《i.MX Linux開發實戰指南—基于野火i.MX系列開發板.pdf》資料免費下載
發表于 10-10 17:23
?11次下載
使用TPS6521825和LP873347 PMIC為NXP i.MX 8M Mini和Nano供電
電子發燒友網站提供《使用TPS6521825和LP873347 PMIC為NXP i.MX 8M Mini和Nano供電.pdf》資料免費下載
發表于 09-13 09:42
?0次下載
i.MX 8M Plus中的ISP圖像信號處理模塊特性概述
日常生活中,人類約80%的信息來自于視覺信息,而視覺信息的載體是數以億萬計的圖片和視頻流,因此如何打造高效而智能的視覺處理解決方案,是擺在開發者面前的重要課題。 恩智浦推出的i.MX 8M P
TSN時鐘同步 | PTP對時案例演示——基于NXP i.MX 8M Plus
TLIMX8MP-EVM評估板的TSN時鐘同步、PTP對時案例,創龍科技TLIMX8MP-EVM是基于NXP i.MX 8M
發表于 07-10 10:28
【PHYTEC AM62x開發板試用】開箱
本帖最后由 如去如來 于 2024-6-27 12:28 編輯
收到PHYTEC AM62x開發板已經兩周,忙于其他事情還沒來得及開箱測試,今天來補上。
自從1986年德國PHYTEC公司創立
發表于 06-18 23:27
點擊參與米爾NXP i.MX 93開發板有獎試用
米爾與NXP合作發布的新品基于NXPi.MX93應用處理器的MYD-LMX9X開發板免費試用活動來啦~~米爾提供了3塊價值678元的MYD-LMX9X開發板發起
米爾NXP i.MX 93開發板的Qt開發指南
1.概述Qt是一個跨平臺的圖形應用開發框架,被應用在不同尺寸設備和平臺上,同時提供不同版權版本供用戶選擇。米爾NXPi.MX93開發板(MYD-LMX9X開發板)使用Qt6.5版本進行
飛凌嵌入式i.MX 8M Plus開發板的OTA遠程升級方案
的方式,可升級系統內核、文件系統和應用。接下來,將以飛凌嵌入式OKMX8MP-C開發板為例,基于Linux 5.4.70版本內核,展示升級前后的切換效果。 切換前,系統啟動讀取系統的boot.0
NXP系列-NXP i.MX 93核心板開發板-入門級嵌入式核心板-產品資料
MYC-LMX9X核心板及開發板NXP i.MX 93重新定義入門級嵌入式CPU模組2*Cortex-A55@1.7GHz+Cortex-M33@250MHz,滿足高性能和實時性需求;
發表于 04-23 11:07
?5次下載
適用于 NXP i.MX 8M Mini 的 TPS6521825 電源管理IC TPS6521825數據表
電子發燒友網站提供《適用于 NXP i.MX 8M Mini 的 TPS6521825 電源管理IC TPS6521825數據表.pdf》資料免費下載
發表于 03-01 09:09
?0次下載
評論