Linux
如何在嵌入式 linux 設備中對記憶體進行基準測試?
是否有通用實用程序來對嵌入式設備(例如樹莓派)上的外部儲存設備(eMMC、DDR)吞吐量進行基準測試?memtester, bonnie, bonnie++, memtest, dd?
我一直遇到與某些標誌的“不合理
open
”相關的問題,以及 linux 記憶體東西並給我帶來非凡的讀取速度的事實。我最終放棄了一個 C 應用程序並直接從命令行測試了 10MiB 操作dd
:eMMC的順序寫測試
sync; echo 3 > /proc/sys/vm/drop_caches; time dd if=/dev/zero of=/dev/mydevicepartition count=20 bs=524288 conv=fsync
eMMC的順序讀取測試
sync; echo 3 > /proc/sys/vm/drop_caches; time dd if=/dev/mydevicepartition of=/dev/null count=20 bs=524288
這個論壇上的其他人似乎也有類似的問題。
你看過Linux Benchmark Suite嗎?它包括多種工具來測量各種儲存格式的性能,包括磁碟(記憶體卡等)和記憶體(RAM、L1 和 L2 記憶體等)。
使用 dd 選項 oflag 直接繞過 RAM 記憶體。建議使用 eMMC 擦除塊大小(通常為 4M-16M)量級的塊大小以獲得最佳寫入性能。
選擇正確的基準顯然取決於嵌入式設備的應用。
移動台:https ://github.com/ESOS-Lab/mobibench
IOzone: http: //www.iozone.org/
dd: http: //man7.org/linux/man-pages/man1/dd.1.html
是一些經常使用的應用程序。