GPGPU-SIM 使用篇
GPGPU-SIM 使用篇
什么是GPGPU-SIM
- 簡單地說,GPGPU-SIM是一款仿真器,可以在CPU上仿真執行CUDA程序
- 主頁
- 使用手冊
- github
如何優雅地安裝GPGPU-SIM
依賴=>Spack
-
GPGPU-SIM的手動安裝過程較為復雜,很容易因為依賴導致安裝失敗
-
強烈推薦通過Spack安裝
-
這里介紹參考上面的安裝方法
- 在安裝好spack后,運行命令spack create gpgpu-sim 并修改內容為package.py
- 運行命令spack install gpgpu-sim%gcc@7.5.0 ^ mesa~llvm
-
docker 安裝
dock pull gtyinstinct/gpgpu-sim:spack
如何優雅地使用GPGPU-SIM
依賴=>通過spack安裝GPGPU-SIM
GPGPU-SIM仿真需要在運行目錄下存在config文件,且每次運行過后都會有很多其他文件生成,導致文件混亂
單次仿真
-
為了解決上述問題,我寫了幾個腳本來在GPGPU-SIM上仿真程序
-
例如,你想使用RTX2060配置仿真,你的仿真程序為test.cu,你的Spack上CUDA版本為11.7,你需要通過nvcc編譯仿真程序,你的Spack上GPGPU-SIM為gpgpu-sim@4.0.1,那么你需要在run.sh中修改變量NAME=test、CONFIG=RTX2060、GPGPUSIM=gpgpu-sim@4.0.1、IFBUILD=1,CUDAVERSION=11.7,將test.cu放到${SRC}目錄下,并在終端中輸入如下命令
或者你也可以將編譯好的程序放到${BIN}目錄下,并修改IFBUILD=0
# pwd # **/SimpleUseGpgpuSim 確保當前目錄在SimpleUseGpgpuSim . run.sh -
此時文件(your_dir)目錄結構為
- bin 目錄存放編譯好或提前放置的可執行程序
- sim 目錄存放每次仿真后GPGPU-SIM自動輸出的文件和指定的配置文件
- out 目錄存放每次仿真后GPGPU-SIM的輸出信息
-
變量的使用詳見run.sh中的注釋
-
run.sh
批量仿真
-
批量仿真基于單次仿真
-
假如你想仿真test1.cu和test2.cu程序,并希望使用GPGPU-SIM4.0.1版本仿真(需要Spack中存在以上版本),仿真配置為RTX2060或QV100,修改好的變量見batch_run.sh,并在終端輸入如下命令
# pwd # **/SimpleUseGpgpuSim 確保當前目錄在SimpleUseGpgpuSim . batch_run.sh -
得到的文件目錄結構和單次仿真一致
-
batch_run.sh
-
run_each.sh
如何優雅地構建GPGPU-SIM
依賴=>通過spack安裝GPGPU-SIM
例如,你修改了GPGPU-SIM的源碼,那么怎么通過Spack重新構建GPGPU-SIM?
-
可以通過syn_gpgpu_sim.sh完成一鍵重新構建
-
例如,你修改的GPGPU-SIM的路徑為~/gpgpu-sim,在syn_gpgpu_sim.sh修改GPGPUSIM_DIR=~/gpgpu-sim,并在終端輸入
# pwd# **/SimpleUseGpgpuSim 確保當前目錄在SimpleUseGpgpuSim. syn_gpgpu_sim.sh注意需要運行命令 spack edit gpgpu-sim并修改為package.py
-
變量的使用詳見syn_gpgpu_sim.sh中的注釋
-
syn_gpgpu_sim.sh
總結
以上是生活随笔為你收集整理的GPGPU-SIM 使用篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 床长人工智能教程 - 目录
- 下一篇: 安徽大学计算机基础知识答案,安徽大学大学