国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【ROC-RK3568-PC開發板試用體驗】全面性能測試

開發板試用精選 ? 來源:開發板試用 ? 作者:電子發燒友論壇 ? 2022-10-18 15:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文來源電子發燒友社區,作者:李先生, 帖子地址:https://bbs.elecfans.com/jishu_2304985_1_1.html


前言

板子的性能不僅僅和CPU相關,也和存儲等相關,是一個綜合體現,所以我們從CPU,存儲,等幾個關鍵的部分去進行性能測試。

CPU性能:Coremark跑分

git clone [https://github.com/eembc/coremark.git](https://github.com/eembc/coremark.git)

cd coremark/

單線程

make ITERATIONS=100000

打印信息如下

root@firefly:~/coremark# make ITERATIONS=100000

make XCFLAGS=" -DPERFORMANCE_RUN=1" load run1.log

make[1]: Entering directory '/root/coremark'

make port_prebuild

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_prebuild'.

make[2]: Leaving directory '/root/coremark'

make link

make[2]: Entering directory '/root/coremark'

cc -O2 -Ilinux -Iposix -I. -DFLAGS_STR=""-O2 -DPERFORMANCE_RUN=1  -lrt"" -DITERATIONS=100000 -DPERFORMANCE_RUN=1 core_list_join.c core_main.c core_matrix.c core_state.c core_util.c posix/core_portme.c -o ./coremark.exe -lrt

Link performed along with compile

make[2]: Leaving directory '/root/coremark'

make port_postbuild

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postbuild'.

make[2]: Leaving directory '/root/coremark'

make port_preload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_preload'.

make[2]: Leaving directory '/root/coremark'

echo Loading done ./coremark.exe

Loading done ./coremark.exe

make port_postload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postload'.

make[2]: Leaving directory '/root/coremark'

make port_prerun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_prerun'.

make[2]: Leaving directory '/root/coremark'

./coremark.exe  0x0 0x0 0x66 100000 7 1 2000 > ./run1.log

make port_postrun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postrun'.

make[2]: Leaving directory '/root/coremark'

make[1]: Leaving directory '/root/coremark'

make XCFLAGS=" -DVALIDATION_RUN=1" load run2.log

make[1]: Entering directory '/root/coremark'

make port_preload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_preload'.

make[2]: Leaving directory '/root/coremark'

echo Loading done ./coremark.exe

Loading done ./coremark.exe

make port_postload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postload'.

make[2]: Leaving directory '/root/coremark'

make port_prerun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_prerun'.

make[2]: Leaving directory '/root/coremark'

./coremark.exe  0x3415 0x3415 0x66 100000 7 1 2000  > ./run2.log

make port_postrun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postrun'.

make[2]: Leaving directory '/root/coremark'

make[1]: Leaving directory '/root/coremark'

Check run1.log and run2.log for results.

See README.md for run and reporting rules.

run1.log

root@firefly:~/coremark# vi run1.log

2K performance run parameters for coremark.

CoreMark Size    : 666

Total ticks      : 14036

Total time (secs): 14.036000

Iterations/Sec   : 7124.536905

Iterations       : 100000

Compiler version : GCC9.4.0

Compiler flags   : -O2 -DPERFORMANCE_RUN=1  -lrt

Memory location  : Please put data memory location here

(e.g. code in flash, data on heap etc)

seedcrc          : 0xe9f5

[0]crclist       : 0xe714

[0]crcmatrix     : 0x1fd7

[0]crcstate      : 0x8e3a

[0]crcfinal      : 0xd340

Correct operation validated. See README.md for run and reporting rules.

CoreMark 1.0 : 7124.536905 / GCC9.4.0 -O2 -DPERFORMANCE_RUN=1  -lrt / Heap

run2.log

root@firefly:~/coremark# vi run2.log

2K validation run parameters for coremark.

CoreMark Size    : 666

Total ticks      : 14138

Total time (secs): 14.138000

Iterations/Sec   : 7073.136229

Iterations       : 100000

Compiler version : GCC9.4.0

Compiler flags   : -O2 -DPERFORMANCE_RUN=1  -lrt

Memory location  : Please put data memory location here

(e.g. code in flash, data on heap etc)

seedcrc          : 0x18f2

[0]crclist       : 0xe3c1

[0]crcmatrix     : 0x0747

[0]crcstate      : 0x8d84

[0]crcfinal      : 0x5c66

Correct operation validated. See README.md for run and reporting rules.

多線程

make XCFLAGS="-DMULTITHREAD=4 -DUSE_FORK"

打印如下

root@firefly:~/coremark# make XCFLAGS="-DMULTITHREAD=4 -DUSE_FORK"

make XCFLAGS="-DMULTITHREAD=4 -DUSE_FORK -DPERFORMANCE_RUN=1" load run1.log

make[1]: Entering directory '/root/coremark'

make port_preload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_preload'.

make[2]: Leaving directory '/root/coremark'

echo Loading done ./coremark.exe

Loading done ./coremark.exe

make port_postload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postload'.

make[2]: Leaving directory '/root/coremark'

make port_prerun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_prerun'.

make[2]: Leaving directory '/root/coremark'

./coremark.exe  0x0 0x0 0x66 0 7 1 2000 > ./run1.log

make port_postrun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postrun'.

make[2]: Leaving directory '/root/coremark'

make[1]: Leaving directory '/root/coremark'

make XCFLAGS="-DMULTITHREAD=4 -DUSE_FORK -DVALIDATION_RUN=1" load run2.log

make[1]: Entering directory '/root/coremark'

make port_preload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_preload'.

make[2]: Leaving directory '/root/coremark'

echo Loading done ./coremark.exe

Loading done ./coremark.exe

make port_postload

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postload'.

make[2]: Leaving directory '/root/coremark'

make port_prerun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_prerun'.

make[2]: Leaving directory '/root/coremark'

./coremark.exe  0x3415 0x3415 0x66 0 7 1 2000  > ./run2.log

make port_postrun

make[2]: Entering directory '/root/coremark'

make[2]: Nothing to be done for 'port_postrun'.

make[2]: Leaving directory '/root/coremark'

make[1]: Leaving directory '/root/coremark'

Check run1.log and run2.log for results.

See README.md for run and reporting rules.

run1.log

root@firefly:~/coremark# vi run1.log

2K performance run parameters for coremark.

CoreMark Size    : 666

Total ticks      : 15471

Total time (secs): 15.471000

Iterations/Sec   : 28440.307672

Iterations       : 440000

Compiler version : GCC9.4.0

Compiler flags   : -O2 -DMULTITHREAD=4 -DUSE_FORK -DPERFORMANCE_RUN=1  -lrt

Parallel Fork : 4

Memory location  : Please put data memory location here

(e.g. code in flash, data on heap etc)

seedcrc          : 0xe9f5

[0]crclist       : 0xe714

[1]crclist       : 0xe714

[2]crclist       : 0xe714

[3]crclist       : 0xe714

[0]crcmatrix     : 0x1fd7

[1]crcmatrix     : 0x1fd7

[2]crcmatrix     : 0x1fd7

[3]crcmatrix     : 0x1fd7

[0]crcstate      : 0x8e3a

[1]crcstate      : 0x8e3a

[2]crcstate      : 0x8e3a

[3]crcstate      : 0x8e3a

[0]crcfinal      : 0x33ff

[1]crcfinal      : 0x33ff

[2]crcfinal      : 0x33ff

[3]crcfinal      : 0x33ff

Correct operation validated. See README.md for run and reporting rules.

CoreMark 1.0 : 28440.307672 / GCC9.4.0 -O2 -DMULTITHREAD=4 -DUSE_FORK -DPERFORMANCE_RUN=1  -lrt / Heap / 4:Fork

~

run2.log

root@firefly:~/coremark# vi run2.log

2K validation run parameters for coremark.

CoreMark Size    : 666

Total ticks      : 15582

Total time (secs): 15.582000

Iterations/Sec   : 28237.710178

Iterations       : 440000

Compiler version : GCC9.4.0

Compiler flags   : -O2 -DMULTITHREAD=4 -DUSE_FORK -DPERFORMANCE_RUN=1  -lrt

Parallel Fork : 4

Memory location  : Please put data memory location here

(e.g. code in flash, data on heap etc)

seedcrc          : 0x18f2

[0]crclist       : 0xe3c1

[1]crclist       : 0xe3c1

[2]crclist       : 0xe3c1

[3]crclist       : 0xe3c1

[0]crcmatrix     : 0x0747

[1]crcmatrix     : 0x0747

[2]crcmatrix     : 0x0747

[3]crcmatrix     : 0x0747

[0]crcstate      : 0x8d84

[1]crcstate      : 0x8d84

[2]crcstate      : 0x8d84

[3]crcstate      : 0x8d84

[0]crcfinal      : 0x0956

[1]crcfinal      : 0x0956

[2]crcfinal      : 0x0956

[3]crcfinal      : 0x0956

Correct operation validated. See README.md for run and reporting rules.

對比

https://www.eembc.org/coremark/scores.php

下搜索A55沒有對應的芯片的跑分,
可以和A53對比下,
image.png

我們這里的得分28440比A53的19678還是高很多的,并且還僅是-O2優化。

計算圓周率

time echo "[scale](https://so.csdn.net/so/search?q=scale&spm=1001.2101.3001.7020)=5000; 4*a(1)" | bc -l -q

執行時間如下

real    0m47.623s

user    0m47.596s

sys     0m0.012s

RAM

帶寬

參考https://www.cs.virginia.edu/stream/ref.html

git clone [https://github.com/qinyunti/STREAM.git](https://github.com/qinyunti/STREAM.git)

cd STREAM/

gcc -O3 stream.c -o stream

打印如下

root@firefly:~/coremark/STREAM# ./stream

---

STREAM version $Revision: 5.10 $

---

This system uses 8 bytes per array element.

---

Array size = 10000000 (elements), Offset = 0 (elements)

Memory per array = 76.3 MiB (= 0.1 GiB).

Total memory required = 228.9 MiB (= 0.2 GiB).

Each kernel will be executed 10 times.

The *best* time for each kernel (excluding the first iteration)

will be used to compute the reported bandwidth.

---

Your clock granularity/precision appears to be 1 microseconds.

Each test below will take on the order of 43055 microseconds.

(= 43055 clock ticks)

Increase the size of the arrays if this shows that

you are not getting at least 20 clock ticks per test.

---

WARNING -- The above is only a rough guideline.

For best results, please be sure you know the

precision of your system timer.

---

Function    Best Rate MB/s  Avg time     Min time     Max time

Copy:            6306.2     0.025627     0.025372     0.025743

Scale:           5647.5     0.028464     0.028331     0.028618

Add:             5446.5     0.044271     0.044065     0.044582

Triad:           5169.9     0.046605     0.046423     0.046989

---

Solution Validates: avg error less than 1.000000e-13 on all three arrays

壓力測試

參考https://pyropus.ca./software/memtester/

wget [https://pyropus.ca./software/memtester/old-versions/memtester-4.5.1.tar.gz](https://pyropus.ca./software/memtester/old-versions/memtester-4.5.1.tar.gz)

tar -xvf memtester-4.5.1.tar.gz

cd memtester-4.5.1/

gcc -O3 memtester.c tests.c -o memtester

./memtester 512M 1

512M表示測試RAM大小

1表示測試一次

打印如下

root@firefly:~/memtester-4.5.1# ./memtester 512M 1

memtester version 4.5.1 (64-bit)

Copyright (C) 2001-2020 Charles Cazabon.

Licensed under the GNU General Public License version 2 (only).

pagesize is 4096

pagesizemask is 0xfffffffffffff000

want 512MB (536870912 bytes)

got  512MB (536870912 bytes), trying mlock ...locked.

Loop 1/1:

Stuck Address       : ok

Random Value        : ok

Compare XOR         : ok

Compare SUB         : ok

Compare MUL         : ok

Compare DIV         : ok

Compare OR          : ok

Compare AND         : ok

Sequential Increment: ok

Solid Bits          : ok

Block Sequential    : ok

Checkerboard        : ok

Bit Spread          : ok

Bit Flip            : ok

Walking Ones        : ok

Walking Zeroes      : ok

Done.

EMMC

dmesg | grep mmc

可以看到打印

1.975460] mmc3: new ultra high speed SDR104 SDIO card at address 0001

[    2.312867] mmc3:mmc host rescan start!

其中high speed SDR104表示emmc 設備支持的時鐘模式:

Speed Mode clock (MHz)
Default Speed 26
Hight Speed SDR 52
Hight Speed DDR 52
HS200 200
HS400 200

SDR : 單邊沿采樣

DDR : 雙邊沿采樣

所以我們這里x8-bit理論最大吞吐量應該是52MB/S。

輸入df回車

我們看到EMMC的/dev/mmcblk0p7掛在了目錄/userdata

我們就在該目錄下讀寫文件測試

root@firefly:~/memtester-4.5.1# df

Filesystem     1K-blocks    Used Available Use% Mounted on

udev             1984744       8   1984736   1% /dev

tmpfs             399616    1168    398448   1% /run

/dev/mmcblk0p6   2666944 2599912         0 100% /root-ro

/dev/mmcblk0p7  26999224 6355668  20627172  24% /userdata

overlayroot     26999224 6355668  20627172  24% /

tmpfs            1998060       0   1998060   0% /dev/shm

tmpfs               5120       4      5116   1% /run/lock

tmpfs            1998060       0   1998060   0% /sys/fs/cgroup

tmpfs             399612       0    399612   0% /run/user/0

tmpfs             399612       8    399604   1% /run/user/1000

root@firefly:~/memtester-4.5.1#

dd if=/userdata/test.bin of=/dev/null bs=塊大小 count=塊數量

dd if=/dev/zero of=/userdata/test.bin bs=塊大小 count=塊數量

測試記錄如下

bs/count 1GB bs/count 1GB 指令 結果
16k/65536 dd if=/userdata/test.bin of=/dev/null bs=16k count=65536 iflag=direct 36.5 MB/s
4k/262144 dd if=/userdata/test.bin of=/dev/null bs=4k count=262144 iflag=direct 14.7 MB/s
1k/1048576 dd if=/userdata/test.bin of=/dev/null bs=1k count=10485764 iflag=direct 2.2 MB/s
16k/65536 dd if=/dev/zero of=/userdata/test.bin bs=16k count=65536 conv=fdatasync 118 MB/s
4k/262144 dd if=/dev/zero of=/userdata/test.bin bs=4k count=262144 conv=fdatasync 112 MB/s
1k/1048576 dd if=/dev/zero of=/userdata/test.bin bs=1k count=1048576 conv=fdatasync 64.6 MB/s

QT

sudo apt-get install qt5-default qtcreator

直接板上使用qtcreator開發,操作也比較流暢
image.png

GPU

sudo apt install glmark2

運行

輸入glmark2回車
image.png

最終得分

=======================================================


glmark2 Score: 49

=======================================================

視頻硬件編解碼

/usr/local/test.mp4

1080P, 24Fps, H264

播放流暢
image.png

總結

綜合各方面,該開發板性能都非常不錯,特別適合人機交互,AI,邊緣計算等高性能要求的場景。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • RK3568
    +關注

    關注

    5

    文章

    644

    瀏覽量

    7948
  • 開發板試用
    +關注

    關注

    3

    文章

    303

    瀏覽量

    2750
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    迅為驅動開發實戰:iTOP-RK3568開發板eDP屏幕移植全攻略

    迅為驅動開發實戰:iTOP-RK3568開發板eDP屏幕移植全攻略
    的頭像 發表于 12-30 15:42 ?899次閱讀
    迅為驅動<b class='flag-5'>開發</b>實戰:iTOP-<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>eDP屏幕移植全攻略

    【迅為工業RK3568穩定可靠】itop-3568開發板Linux驅動開發實戰:RK3568內核模塊符號導出詳解

    【迅為工業RK3568穩定可靠】itop-3568開發板Linux驅動開發實戰:RK3568內核模塊符號導出詳解
    的頭像 發表于 11-21 13:25 ?1207次閱讀
    【迅為工業<b class='flag-5'>RK3568</b>穩定可靠】itop-<b class='flag-5'>3568</b><b class='flag-5'>開發板</b>Linux驅動<b class='flag-5'>開發</b>實戰:<b class='flag-5'>RK3568</b>內核模塊符號導出詳解

    飛凌嵌入式RK3568開發板的TFTP燒寫文件系統指南

    本文基于搭載瑞芯微RK3568處理器的OK3568-C開發板Linux4.19.206標準開發環境開展測試,其網絡基礎穩定,可滿足TFTP協
    的頭像 發表于 11-21 08:03 ?2020次閱讀
    飛凌嵌入式<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>的TFTP燒寫文件系統指南

    【迅為工業RK3568穩定可靠】itop-3568開發板驅動開發第4章驅動模塊傳參實驗

    【迅為工業RK3568穩定可靠】itop-3568開發板驅動開發第4章驅動模塊傳參實驗
    的頭像 發表于 11-06 14:25 ?378次閱讀
    【迅為工業<b class='flag-5'>RK3568</b>穩定可靠】itop-<b class='flag-5'>3568</b><b class='flag-5'>開發板</b>驅動<b class='flag-5'>開發</b>第4章驅動模塊傳參實驗

    【作品合集】合眾HZ-RK3568開發板測評

    地址:合眾HZ-RK3568開發板試用體驗 作者:gtbestom【HZ-RK3568開發板免費體驗】合縱恒躍 HZ-
    發表于 09-10 10:22

    迅為RK3568開發板模型推理測試實戰LPRNet?車牌識別

    迅為RK3568開發板模型推理測試實戰LPRNet 車牌識別
    的頭像 發表于 08-25 14:55 ?1321次閱讀
    迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>模型推理<b class='flag-5'>測試</b>實戰LPRNet?車牌識別

    迅為RK3568?重制版RK3568驅動指南全面升級

    迅為RK3568 重制版RK3568驅動指南全面升級
    的頭像 發表于 07-28 15:25 ?2563次閱讀
    迅為<b class='flag-5'>RK3568</b>?重制版<b class='flag-5'>RK3568</b>驅動指南<b class='flag-5'>全面</b>升級

    RK3568 EVB開發板 深度休眠與快速醒的工作流程

    RK3568 EVB開發板關于深度休眠和喚醒流程的分析
    的頭像 發表于 07-22 09:49 ?854次閱讀
    <b class='flag-5'>RK3568</b> EVB<b class='flag-5'>開發板</b> 深度休眠與快速醒的工作流程

    【HZ-RK3568開發板免費體驗】1、開發板資源、SDK使用和鏡像燒寫

    試用開發板是合眾恒躍的HZ_EVM_3568開發板RK3568 是一顆高性能、低功耗的四核應
    發表于 07-21 20:52

    RK3568開發板暗藏32位兼容開關?飛凌嵌入式帶你一鍵解鎖!

    RK3568是一款64位處理器,飛凌嵌入式為其提供的交叉編譯器也是64位的,然而部分用戶可能需要在RK3568開發板上運行32位應用。本文將詳細闡述如何使用32位交叉編譯器,編譯出32位應用,并使其能夠在飛凌嵌入式
    的頭像 發表于 07-19 08:49 ?4399次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>暗藏32位兼容開關?飛凌嵌入式帶你一鍵解鎖!

    【HZ-RK3568開發板免費體驗】合眾HZ-RK3568開發板測評

    合眾HZ-RK3568開發板是合眾恒躍科技最新推出的嵌入式開發板,采用核心+底板的分體式設計,基于 Rockchip RK3568 處理器
    發表于 07-14 22:24

    迅為RK3568開發板驅動指南GPIO子系統GPIO子系統API函數的引入

    迅為RK3568開發板驅動指南GPIO子系統GPIO子系統API函數的引入
    的頭像 發表于 05-29 14:05 ?1029次閱讀
    迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>驅動指南GPIO子系統GPIO子系統API函數的引入

    一文掌握RK3568開發板Android13掛載Windows共享目錄

    在物聯網和邊緣計算場景中,開發板PC端的高效文件交互尤為重要。現以iTOP-RK3568開發板為例,詳細演示Android13系統如何通過CIFS協議掛載Windows共享目錄,實現
    的頭像 發表于 04-17 13:54 ?1210次閱讀
    一文掌握<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>Android13掛載Windows共享目錄

    RK3568開發板教程:以iTOP-RK3568開發板為例 Android13通過CIFS協議掛載Windows共享目錄

    開發板PC端的高效文件交互尤為重要。現以iTOP-RK3568開發板為例,詳細演示Android13系統如何通過CIFS協議掛載Windows共享目錄,實現
    的頭像 發表于 04-16 14:08 ?1854次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>教程:以iTOP-<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>為例 Android13通過CIFS協議掛載Windows共享目錄

    北京迅為RK3568開發板OpenHarmony系統南向驅動開發內核HDF驅動框架架構

    北京迅為RK3568開發板OpenHarmony系統南向驅動開發內核HDF驅動框架架構
    的頭像 發表于 03-11 14:13 ?1862次閱讀
    北京迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>OpenHarmony系統南向驅動<b class='flag-5'>開發</b>內核HDF驅動框架架構