Skip to content

Commit

Permalink
util: fix gem5 path
Browse files Browse the repository at this point in the history
Change-Id: I104b80020dc8c6fa2b03a5e8f1bf4abefae425af
  • Loading branch information
jensen-yan committed Nov 29, 2024
1 parent 3608d34 commit 68c4ffe
Showing 1 changed file with 169 additions and 171 deletions.
340 changes: 169 additions & 171 deletions .github/workflows/gem5.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,159 +7,159 @@ on:
branches: [ xs-dev ]

jobs:
# valgrind_memory_check:
# runs-on: self-hosted
# continue-on-error: false
# name: XS-GEM5 - Check memory corruption
# steps:
# - uses: actions/checkout@v2
# - name: Build DRAMSim
# run: |
# export GEM5_HOME=$(pwd)
# cd ext/dramsim3
# git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
# cd DRAMsim3 && mkdir -p build
# cd build
# cmake ..
# make -j 48
# cd $GEM5_HOME
# - name: Build GEM5 debug
# run: CC=gcc CXX=g++ scons build/RISCV/gem5.debug --linker=gold -j64
# - name: Memory check
# run: |
# export GEM5_HOME=$(pwd)
# bash util/memory_check/run-xs-with-valgrind.sh
# cd $GEM5_HOME
valgrind_memory_check:
runs-on: self-hosted
continue-on-error: false
name: XS-GEM5 - Check memory corruption
steps:
- uses: actions/checkout@v2
- name: Build DRAMSim
run: |
export GEM5_HOME=$(pwd)
cd ext/dramsim3
git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
cd DRAMsim3 && mkdir -p build
cd build
cmake ..
make -j 48
cd $GEM5_HOME
- name: Build GEM5 debug
run: CC=gcc CXX=g++ scons build/RISCV/gem5.debug --linker=gold -j64
- name: Memory check
run: |
export GEM5_HOME=$(pwd)
bash util/memory_check/run-xs-with-valgrind.sh
cd $GEM5_HOME
# new_sim_script_test_gcb:
# runs-on: self-hosted
# continue-on-error: false
# name: XS-GEM5 - Test new simulation script on RV64GCB
# steps:
# - uses: actions/checkout@v2
# - name: Build DRAMSim
# run: |
# export GEM5_HOME=$(pwd)
# cd ext/dramsim3
# git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
# cd DRAMsim3 && mkdir -p build
# cd build
# cmake ..
# make -j 48
# cd $GEM5_HOME
# - name: Build GEM5 opt
# run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
# - name: XS-GEM5 - Test xiangshan.py simulation scripts
# run: |
# export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
# export GCB_RESTORER="/nfs/home/share/gem5_shared_tools/normal-gcb-restorer.bin"
# export GEM5_HOME=$(pwd)
# mkdir -p $GEM5_HOME/util/xs_scripts/test
# cd $GEM5_HOME/util/xs_scripts/test
# bash ../kmh_6wide.sh /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_rv64gcb_O3_20m_gcc12.2.0-intFpcOff-jeMalloc/zstd-checkpoint-0-0-0/xalancbmk/133/_133_0.006424_.zstd
new_sim_script_test_gcb:
runs-on: self-hosted
continue-on-error: false
name: XS-GEM5 - Test new simulation script on RV64GCB
steps:
- uses: actions/checkout@v2
- name: Build DRAMSim
run: |
export GEM5_HOME=$(pwd)
cd ext/dramsim3
git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
cd DRAMsim3 && mkdir -p build
cd build
cmake ..
make -j 48
cd $GEM5_HOME
- name: Build GEM5 opt
run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
- name: XS-GEM5 - Test xiangshan.py simulation scripts
run: |
export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
export GCB_RESTORER="/nfs/home/share/gem5_shared_tools/normal-gcb-restorer.bin"
export GEM5_HOME=$(pwd)
mkdir -p $GEM5_HOME/util/xs_scripts/test
cd $GEM5_HOME/util/xs_scripts/test
bash ../kmh_6wide.sh /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_rv64gcb_O3_20m_gcc12.2.0-intFpcOff-jeMalloc/zstd-checkpoint-0-0-0/xalancbmk/133/_133_0.006424_.zstd
# new_sim_script_test_gcbv:
# runs-on: self-hosted
# continue-on-error: false
# name: XS-GEM5 - Test new simulation script on RV64GCBV
# steps:
# - uses: actions/checkout@v2
# - name: Build DRAMSim
# run: |
# export GEM5_HOME=$(pwd)
# cd ext/dramsim3
# git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
# cd DRAMsim3 && mkdir -p build
# cd build
# cmake ..
# make -j 48
# cd $GEM5_HOME
# - name: Build GEM5 opt
# run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
# - name: XS-GEM5 - Test xiangshan.py simulation scripts
# run: |
# export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
# export GCBV_RESTORER="/nfs/home/share/gem5_shared_tools/gcbv-restorer.bin"
# export GEM5_HOME=$(pwd)
# mkdir -p $GEM5_HOME/util/xs_scripts/test_v
# cd $GEM5_HOME/util/xs_scripts/test_v
# bash ../kmh_6wide_vector.sh /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_hmmer_libquantum_h264_rv64gcv_O3_20m_gcc14.0.0_1218-intFpcOff-ptMalloc/disdain-practical-toll-2023-12-25-11-26/zstd-checkpoint-0-0-0/hmmer_nph3/102/_102_0.0243576.zstd
new_sim_script_test_gcbv:
runs-on: self-hosted
continue-on-error: false
name: XS-GEM5 - Test new simulation script on RV64GCBV
steps:
- uses: actions/checkout@v2
- name: Build DRAMSim
run: |
export GEM5_HOME=$(pwd)
cd ext/dramsim3
git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
cd DRAMsim3 && mkdir -p build
cd build
cmake ..
make -j 48
cd $GEM5_HOME
- name: Build GEM5 opt
run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
- name: XS-GEM5 - Test xiangshan.py simulation scripts
run: |
export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
export GCBV_RESTORER="/nfs/home/share/gem5_shared_tools/gcbv-restorer.bin"
export GEM5_HOME=$(pwd)
mkdir -p $GEM5_HOME/util/xs_scripts/test_v
cd $GEM5_HOME/util/xs_scripts/test_v
bash ../kmh_6wide_vector.sh /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_hmmer_libquantum_h264_rv64gcv_O3_20m_gcc14.0.0_1218-intFpcOff-ptMalloc/disdain-practical-toll-2023-12-25-11-26/zstd-checkpoint-0-0-0/hmmer_nph3/102/_102_0.0243576.zstd
# new_sim_script_test_gcb_multi_core:
# runs-on: self-hosted
# continue-on-error: false
# name: XS-GEM5 - Test Multi-core + RV64GCB
# steps:
# - uses: actions/checkout@v2
# - name: Build GEM5 opt
# run: |
# source /nfs-nvme/home/share/zyy/shared_apps/setenv_AOCC.sh
# CC=clang CXX=clang++ scons build/RISCV_CHI/gem5.opt -j 48 --gold-linker
# - name: XS-GEM5 - Test xiangshan.py simulation scripts
# run: |
# export GCBV_MULTI_CORE_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build-multi/riscv64-nemu-interpreter-so"
# export GCB_MULTI_CORE_RESTORER="/nfs/home/share/gem5_shared_tools/gcb-2core-restorer.bin"
# export GEM5_HOME=$(pwd)
# mkdir -p $GEM5_HOME/util/xs_scripts/test_multi_core
# cd $GEM5_HOME/util/xs_scripts/test_multi_core
# bash ../kmh-ruby-dual.sh /nfs-nvme/home/share/zyy/shared_payloads/bzip_checkpoint_with_sv39_without_rdtime_with_dualmtimecpt_1000M.gz
new_sim_script_test_gcb_multi_core:
runs-on: self-hosted
continue-on-error: false
name: XS-GEM5 - Test Multi-core + RV64GCB
steps:
- uses: actions/checkout@v2
- name: Build GEM5 opt
run: |
source /nfs-nvme/home/share/zyy/shared_apps/setenv_AOCC.sh
CC=clang CXX=clang++ scons build/RISCV_CHI/gem5.opt -j 48 --gold-linker
- name: XS-GEM5 - Test xiangshan.py simulation scripts
run: |
export GCBV_MULTI_CORE_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build-multi/riscv64-nemu-interpreter-so"
export GCB_MULTI_CORE_RESTORER="/nfs/home/share/gem5_shared_tools/gcb-2core-restorer.bin"
export GEM5_HOME=$(pwd)
mkdir -p $GEM5_HOME/util/xs_scripts/test_multi_core
cd $GEM5_HOME/util/xs_scripts/test_multi_core
bash ../kmh-ruby-dual.sh /nfs-nvme/home/share/zyy/shared_payloads/bzip_checkpoint_with_sv39_without_rdtime_with_dualmtimecpt_1000M.gz
# difftest_check:
# runs-on: self-hosted
# continue-on-error: false
# name: XS-GEM5 - Check difftest
# steps:
# - uses: actions/checkout@v2
# - name: Build DRAMSim
# run: |
# export GEM5_HOME=$(pwd)
# cd ext/dramsim3
# git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
# cd DRAMsim3 && mkdir -p build
# cd build
# cmake ..
# make -j 48
# cd $GEM5_HOME
# - name: Build GEM5 debug
# run: CC=clang CXX=clang++ scons build/RISCV/gem5.opt -j 48 --gold-linker
# - name: difftest check
# run: |
# export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build-error/riscv64-nemu-interpreter-so"
# export GCB_RESTORER="/nfs-nvme/home/share/zhenhao/LibCheckpointAlpha/build/gcpt.bin"
# export GEM5_HOME=$(pwd)
# mkdir -p $GEM5_HOME/util/xs_scripts/test
# cd $GEM5_HOME/util/xs_scripts/test
# bash ../kmh_6wide.sh /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_rv64gcb_O3_20m_gcc12.2.0-intFpcOff-jeMalloc/zstd-checkpoint-0-0-0/xalancbmk/133/_133_0.006424_.zstd 2>log.txt || exit_code=$?
# if [ ${exit_code} -eq 0 ]; then echo "Difftest is broken, it should report error!" exit 1; fi
# match=$(grep ".*Difftest failed!.*" log.txt -c)
# if [ ${match} -eq 0 ]; then echo "Difftest is broken, it should report at least one agnostic related difference!" exit 1; fi
difftest_check:
runs-on: self-hosted
continue-on-error: false
name: XS-GEM5 - Check difftest
steps:
- uses: actions/checkout@v2
- name: Build DRAMSim
run: |
export GEM5_HOME=$(pwd)
cd ext/dramsim3
git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
cd DRAMsim3 && mkdir -p build
cd build
cmake ..
make -j 48
cd $GEM5_HOME
- name: Build GEM5 debug
run: CC=clang CXX=clang++ scons build/RISCV/gem5.opt -j 48 --gold-linker
- name: difftest check
run: |
export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build-error/riscv64-nemu-interpreter-so"
export GCB_RESTORER="/nfs-nvme/home/share/zhenhao/LibCheckpointAlpha/build/gcpt.bin"
export GEM5_HOME=$(pwd)
mkdir -p $GEM5_HOME/util/xs_scripts/test
cd $GEM5_HOME/util/xs_scripts/test
bash ../kmh_6wide.sh /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_rv64gcb_O3_20m_gcc12.2.0-intFpcOff-jeMalloc/zstd-checkpoint-0-0-0/xalancbmk/133/_133_0.006424_.zstd 2>log.txt || exit_code=$?
if [ ${exit_code} -eq 0 ]; then echo "Difftest is broken, it should report error!" exit 1; fi
match=$(grep ".*Difftest failed!.*" log.txt -c)
if [ ${match} -eq 0 ]; then echo "Difftest is broken, it should report at least one agnostic related difference!" exit 1; fi
# test_fix_l2tlb_bugs:
# runs-on: self-hosted
# continue-on-error: false
# name: XS-GEM5 - Test fix L2TLB bugs
# steps:
# - uses: actions/checkout@v2
# - name: Build DRAMSim
# run: |
# export GEM5_HOME=$(pwd)
# cd ext/dramsim3
# git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
# cd DRAMsim3 && mkdir -p build
# cd build
# cmake ..
# make -j 48
# cd $GEM5_HOME
# - name: Build GEM5 opt
# run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
# - name: XS-GEM5 - Test xiangshan.py simulation scripts
# run: |
# export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
# export GCB_RESTORER=""
# export GEM5_HOME=$(pwd)
# mkdir -p $GEM5_HOME/util/xs_scripts/test_l2tlb
# cd $GEM5_HOME/util/xs_scripts/test_l2tlb
# bash ../kmh_6wide.sh /nfs/home/share/yanyue/checkpoints/gcc13_gcb_403_61291.zstd
test_fix_l2tlb_bugs:
runs-on: self-hosted
continue-on-error: false
name: XS-GEM5 - Test fix L2TLB bugs
steps:
- uses: actions/checkout@v2
- name: Build DRAMSim
run: |
export GEM5_HOME=$(pwd)
cd ext/dramsim3
git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
cd DRAMsim3 && mkdir -p build
cd build
cmake ..
make -j 48
cd $GEM5_HOME
- name: Build GEM5 opt
run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
- name: XS-GEM5 - Test xiangshan.py simulation scripts
run: |
export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
export GCB_RESTORER=""
export GEM5_HOME=$(pwd)
mkdir -p $GEM5_HOME/util/xs_scripts/test_l2tlb
cd $GEM5_HOME/util/xs_scripts/test_l2tlb
bash ../kmh_6wide.sh /nfs/home/share/yanyue/checkpoints/gcc13_gcb_403_61291.zstd
run_performance_test:
runs-on: self-hosted
Expand All @@ -170,29 +170,27 @@ jobs:
- name: Build DRAMSim
run: |
export GEM5_HOME=$(pwd)
echo $GEM5_HOME
echo $(realpath $GEM5_HOME/README.md)
# cd ext/dramsim3
# git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
# cd DRAMsim3 && mkdir -p build
# cd build
# cmake ..
# make -j 48
# cd $GEM5_HOME
# - name: Build GEM5 opt
# run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
# - name: XS-GEM5 - Run performance test
# # run 50% coverage spec06 checkpoints, 275 checkpoints
# run: |
# export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
# export GCB_RESTORER=""
# export GEM5_HOME=$(pwd)
# mkdir -p $GEM5_HOME/util/xs_scripts/test
# cd $GEM5_HOME/util/xs_scripts/test
# bash ../parallel_sim.sh `realpath ../kmh_6wide.sh` \
# /nfs/home/yanyue/workspace/spec06_cpts/spec_0.5c.lst \
# /nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_rv64gcb_O3_20m_gcc12.2.0-intFpcOff-jeMalloc/zstd-checkpoint-0-0-0 \
# spec_all
cd ext/dramsim3
git clone [email protected]:umd-memsys/DRAMSim3.git DRAMsim3
cd DRAMsim3 && mkdir -p build
cd build
cmake ..
make -j 48
cd $GEM5_HOME
- name: Build GEM5 opt
run: CC=gcc CXX=g++ scons build/RISCV/gem5.opt --linker=gold -j64
- name: XS-GEM5 - Run performance test
# run 50% coverage spec06 checkpoints, 275 checkpoints
run: |
export GCBV_REF_SO="/nfs-nvme/home/share/zhenhao/ref-h/build/riscv64-nemu-interpreter-so"
export GCB_RESTORER=""
export GEM5_HOME=$(pwd)
mkdir -p $GEM5_HOME/util/xs_scripts/test
cd $GEM5_HOME/util/xs_scripts/test
bash ../parallel_sim.sh `realpath ../kmh_6wide.sh` \
/nfs/home/yanyue/workspace/spec06_cpts/spec_0.5c.lst \
/nfs/home/share/jiaxiaoyu/simpoint_checkpoint_archive/spec06_rv64gcb_O3_20m_gcc12.2.0-intFpcOff-jeMalloc/zstd-checkpoint-0-0-0 \
spec_all
- name: Setup gem5_data_proc environment
run: |
# 克隆数据处理仓库到 CI 工作目录
Expand Down

0 comments on commit 68c4ffe

Please sign in to comment.