VISHNU RAMADAS has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/70197?usp=email )

Change subject: tests: Add GPU-FS checkpoint test to weekly
......................................................................

tests: Add GPU-FS checkpoint test to weekly

This commit adds a GPU-FS checkpoint-and-restore test to weekly. The
test builds the disk image and downloads the kernel image needed for
GPU-FS to work. Once the images are ready, square is run and a
checkpoint is taken just before the application is launched. Then, the
checkpoint is restored and run to completion.

Change-Id: I85b78d220a276b34898cfa40b50fd654d47953cd
---
M tests/weekly.sh
1 file changed, 32 insertions(+), 0 deletions(-)



diff --git a/tests/weekly.sh b/tests/weekly.sh
index 9c7ebdf..baa12b6 100755
--- a/tests/weekly.sh
+++ b/tests/weekly.sh
@@ -387,6 +387,38 @@
--benchmark-root=${gem5_root}/gem5-resources/src/gpu/pannotia/sssp/bin \
        -c sssp_ell.gem5 --options="1k_128k.gr 0"

+# Test GPU-FS checkpointing
+# Checkpoints are only supported on VEGA_X86. Furthermore, GPUFS only works
+#if the value in /proc/sys/kernel/perf_event_paranoid is 1 or less. A value
+# greater than 1 prevents gem5 from making the syscall to perf_event_open
+# and GPUFS fails
+perf_event_paranoid=$(cat /proc/sys/kernel/perf_event_paranoid)
+if [[ "$gpu_isa" == "VEGA_X86" ]] && [[ $perf_event_paranoid -le 1 ]]; then
+    docker run --rm --volume "${gem5_root}":"${gem5_root}" -w \
+ "${gem5_root}" --memory="${docker_mem_limit}" hacc-test-weekly bash -c \
+       "rm -rf ${gem5_root}/m5out"
+ mkdir -p ${gem5_root}/gem5-resources/src/gpu-fs/gem5/util/m5/build/x86/out
+    cd ${gem5_root}/util/m5
+ cp build/x86/out/m5 ${gem5_root}/gem5-resources/src/gpu-fs/gem5/util/m5/build/x86/out/
+    cd ${gem5_root}/gem5-resources/src/gpu-fs/disk-image
+    # Build the disk image
+    ./build.sh
+    cd ${gem5_root}
+    # Download square binary
+    wget -qN http://dist.gem5.org/dist/develop/test-progs/square/square
+    # Download kernel for GPUFS
+ wget --no-check-certificate https://dist.gem5.org/dist/v22-1/kernels/x86/static/vmlinux-5.4.0-105-generic
+    mv vmlinux-5.4.0-105-generic ${gem5_root}/gem5-resources/src/gpu-fs/
+    # Run square and create a checkpoint before kernel launch
+ build/VEGA_X86/gem5.opt configs/example/gpufs/vega10_kvm.py --disk-image ${gem5_root}/gem5-resources/src/gpu-fs/disk-image/rocm42/rocm42-image/rocm42 --kernel ${gem5_root}/gem5-resources/src/gpu-fs/vmlinux-5.4.0-105-generic --gpu-mmio-trace ${gem5_root}/gem5-resources/src/gpu-fs/vega_mmio.log --app ${gem5_root}/square --checkpoint-dir m5out/
+    # Restore from the checkpoint and complete square execution
+ build/VEGA_X86/gem5.opt configs/example/gpufs/vega10_kvm.py --disk-image ${gem5_root}/gem5-resources/src/gpu-fs/disk-image/rocm42/rocm42-image/rocm42 --kernel ${gem5_root}/gem5-resources/src/gpu-fs/vmlinux-5.4.0-105-generic --gpu-mmio-trace ${gem5_root}/gem5-resources/src/gpu-fs/vega_mmio.log --app ${gem5_root}/square --restore-dir m5out/
+    rm ${gem5_root}/square
+    cd ${gem5_root}
+    rm -rf ${gem5_root}/m5out
+ rm -rf ${gem5_root}/gem5-resources/src/gpu-fs/disk-image/rocm42/rocm42-image
+fi
+
# Delete the gem5 resources repo we created -- need to do in docker because of
 # cachefiles DNNMark creates
 docker run --rm --volume "${gem5_root}":"${gem5_root}" -w \

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/70197?usp=email To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-MessageType: newchange
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I85b78d220a276b34898cfa40b50fd654d47953cd
Gerrit-Change-Number: 70197
Gerrit-PatchSet: 1
Gerrit-Owner: VISHNU RAMADAS <vrama...@wisc.edu>
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org

Reply via email to