From 7741a500c1da6d534c6b0aeac78531212b743236 Mon Sep 17 00:00:00 2001 From: Joshua Bakita Date: Tue, 13 Sep 2022 02:52:43 -0400 Subject: Fix some privilege bugs with fig10_experiments.sh --- fig10_experiments.sh | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) mode change 100644 => 100755 fig10_experiments.sh diff --git a/fig10_experiments.sh b/fig10_experiments.sh old mode 100644 new mode 100755 index b35caf9..5d48235 --- a/fig10_experiments.sh +++ b/fig10_experiments.sh @@ -1,24 +1,29 @@ #!/bin/bash -# May ask for sudo to drop caches between CPU paging experiments -# DO NOT execute this whole script as sudo +# Needs sudo to drop caches between CPU paging experiments if [ $# -eq 0 ]; then echo "Usage: $0 " exit fi +if [ "$EUID" != 0 ]; then + sudo "$0" "$@" + exit $? +fi + iters=$1 echo "Running GPU paging experiments..." gpu_times=$(date +"%b%d-%H")-gpu-times.tsv echo "# Generated by './fig10_experiments.sh' with $iters iters" > $gpu_times -for ((i = 1; i <= $iters; i++)); do ./gpu_paging_speed | tr -cd '[[:digit:]]\t\n' | sed "/\t$/d"; done >> $gpu_times +# GPU paging needs to be run as a non-root user +for ((i = 1; i <= $iters; i++)); do sudo -u ae ./gpu_paging_speed | tr -cd '[[:digit:]]\t\n' | sed "/\t$/d"; done >> $gpu_times echo "Done. Running direct I/O experiments..." directio_times=$(date +"%b%d-%H")-directio-times.tsv -sudo ./directio_paging_speed $iters > $directio_times +./directio_paging_speed $iters > $directio_times echo "Done. Running demand paging experiments..." demand_paging_times=$(date +"%b%d-%H")-demand-paging-times.tsv -sudo ./demand_paging_speed $iters > $demand_paging_times +./demand_paging_speed $iters > $demand_paging_times echo "Done! Results are saved in $gpu_times, $directio_times, and $demand_paging_times" -- cgit v1.2.2