OK gem5跑bench過程記錄

2021-07-13 08:35:13 字數 3977 閱讀 1982

密碼: shs6

進入my-gem5資料夾之後

scons build/arm/gem5.opt
第一次較慢(大概20分鐘),如果以前跑過gem5可以備份一下build資料夾之後再編譯

將aarch-system-2014-10.tar.xz解壓到my-gem5資料夾下的img資料夾中(如果沒有則自己建立)

目錄結構如下:

gem5/

|——img/

|——|——binaries/

|——|——disks/

密碼: ms7h

向映象新增檔案指令

sudo mount -o loop,offset=32256 img/disks/linux-aarch32-ael.img /mnt

cp -a mibench /mnt

cp -a mediabench /mnt

cd /mnt

chmod +x /mediabench/* -r

chmod +x /mibench/* -r

umount /mnt

將gem5/build/arm/gem5.opt和gem5/configs/鏈結到任一資料夾下(這裡採用gem5/parsec-1/),開始**,注意為不同的benchmark建立不同的目錄

鏈結指令如下

進入parsec-1目錄

ln -s ../build/arm/gem5.opt ./

ln -s ../configs/ ./

目錄結構如下:

parsec-1/

|——board_start.sh

|——gem5.opt

|——configs/

**的過程首先啟動系統,然後在系統中跑bench,為節省時間可以分兩步:

修改board_start.sh檔案:

1.首先將m5_path修改為你自己的img路徑

2.可能需要根據不同的模式進行相應的修改,且注意每種模式後面引數檔案是否存在

執行./board_start.sh時可能會出現錯誤,提示有兩個檔案不存在:

執行gem5/parsec-1/目錄下board_start.sh

再開乙個終端,執行./util/term/m5term 127.0.0.1 3456這裡的3456是個埠號,開第二個的話就是3457(gem5說明:會自動變化)

ael

login:root

出現#號時,說明linux系統已經啟動好

m5 checkpoint       #設定觀察點

m5 exit

#設定完成退出,不用關閉視窗

此時parserc-1/m5out/資料夾裡會生成cpt.***xx資料夾,即為checkpoint,這個資料夾可以重複使用,跑另乙個bench的時候複製其鏈結到m5out資料夾中

再次執行./util/term/m5term 127.0.0.1 3456就可以看到所跑linux系統的命令列#,即已經進入m5終端

進入系統後,根據具體的bench指令直接執行應用

注意:m5終端下盡量少使用bash指令(比如ls, cd, chmod等等,此會影響所跑應用的狀態結果,最好提前修改許可權一句指令解決)

進入parsec-1/m5out/mibench/,複製乙份qsort_small為你所跑bench的名字,然後刪除qsort_small下去掉檢查點檔案cpt.******x以外的所有檔案,重新開啟第8.2步跑新的bench

atomicsimpecpu模式:

.

/gem5

.opt-d

m5out/mibench/qsort_small/--

debug

-flags=o3pipeview

configs/example/fs.py

--mem-

size=1024mb--

kernel=vmlinux

-gem5

-android

-dvfs--

disk

-image=linux

-aarch32

-ael

.img--

caches--

l1i_size=32kb--

l1d_size=32kb--

l1d_assoc=2--

l1i_assoc=2--

l2_assoc=16--

l2cache--

l2_size=128kb--

num-

l2caches=8--

cpu-

type=atomic******cpu-n

1--machine

-type=vexpress_emm--

dtb-

filename=vexpress

-v2p

-ca15

-tc1

-gem5_dvfs_1cpus

.dtb--

frame

-capture--

enable

-context

-switch

-stats

-dump

arm_detailed模式:

.

/gem5

.opt-d

m5out/mibench/qsort_small/--

debug

-flags=o3pipeview

configs/example/fs.py

--mem-

size=1024mb--

kernel=vmlinux

-gem5

-android

-dvfs--

disk

-image=linux

-aarch32

-ael

.img--

caches--

l1i_size=32kb--

l1d_size=32kb--

l1d_assoc=2--

l1i_assoc=2--

l2_assoc=16--

l2cache--

l2_size=128kb--

num-

l2caches=8--

cpu-

type=arm_detailed-n

1--machine

-type=vexpress_emm--

dtb-

filename=vexpress

-v2p

-ca15

-tc1

-gem5_dvfs_1cpus

.dtb--

frame

-capture--

enable

-context

-switch

-stats

-dump-r

1

注意:不同的配置資訊後加入-r 1代表從觀察點啟動,沒有則表示直接啟動,可以設定觀察點

gem5跑linux或安卓bench

1搭建gem5環境 1.1 安裝 安裝所需工具 sudo apt get install git scons g python dev swig m4 protobuf note 我安裝的是gem5 stable版,據說此版可以檢視cache層次結構的pdf 1.3編譯 解壓gem5,進入gem5資...

Mac電腦如何看Geekbench 5跑分?

geekbench 5通過執行代表實際任務和應用程式的測試來衡量裝置的效能。分數越高越好,分數加倍表示效能加倍。geekbench 5使用許多不同的測試或工作負載來衡量cpu效能。工作負載分為三個小節 geekbench 5使用opencl,cuda,vulkan和metal compute api...

前段時間看到乙個「熊來了」的HTML5跑酷遊戲

前段時間看到乙個 熊來了 的html5跑酷遊戲,它是乙個典型的正面2d跑酷遊戲,這裡借用它來介紹一下用gamebuilder cantk開發正面跑酷遊戲的基本方法。var nut this.find ui nut var win this var totalscore 0 var nut,stone...