mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-13 20:12:26 +00:00
As noted however, it is potentially too slow to be useful. run: unify gem5 and qemu tracing under -T readme: overhaul tracing documentation from what I've learnt from trace2line
46 lines
1.2 KiB
Bash
Executable File
46 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -eu
|
|
. common
|
|
caches='--caches --l2cache --l1d_size=1024kB --l1i_size=1024kB --l2_size=1024kB --l3_size=1024kB'
|
|
bench() (
|
|
common_bench_cmd "./run -a ${1}" "$common_bench_boot"
|
|
)
|
|
gem5_insts() (
|
|
printf "instructions $(./gem5-stat -a "$1" sim_insts)\n" >> "$common_bench_boot"
|
|
)
|
|
qemu_insts() (
|
|
arch="$1"
|
|
./qemu-trace2txt -a "$arch"
|
|
set_common_vars "$arch"
|
|
printf "instructions $(wc -l "${common_trace_txt_file}" | cut -d' ' -f1)\n" >> "$common_bench_boot"
|
|
)
|
|
rm -f "${common_bench_boot}"
|
|
|
|
arch=x86_64
|
|
bench "$arch -E '/poweroff.out'"
|
|
bench "$arch -E '/poweroff.out' -K"
|
|
bench "$arch -E '/poweroff.out' -T exec_tb"
|
|
qemu_insts "$arch"
|
|
bench "$arch -E 'm5 exit' -g"
|
|
gem5_insts "$arch"
|
|
#bench "$arch -E 'm5 exit' -g -- --cpu-type=DerivO3CPU ${caches}"
|
|
#gem5_insts "$arch"
|
|
|
|
arch=arm
|
|
bench "$arch -E '/poweroff.out'"
|
|
bench "$arch -E '/poweroff.out' -T exec_tb"
|
|
qemu_insts "$arch"
|
|
bench "$arch -E 'm5 exit' -g"
|
|
gem5_insts "$arch"
|
|
#bench "$arch -E 'm5 exit' -g -- --cpu-type=HPI ${caches}"
|
|
#gem5_insts "$arch"
|
|
|
|
arch=aarch64
|
|
bench "$arch -E '/poweroff.out'"
|
|
bench "$arch -E '/poweroff.out' -T exec_tb"
|
|
qemu_insts "$arch"
|
|
bench "$arch -E 'm5 exit' -g"
|
|
gem5_insts "$arch"
|
|
bench "$arch -E 'm5 exit' -g -- --cpu-type=HPI ${caches}"
|
|
gem5_insts "$arch"
|