scripts: Move logic in prep_benchmarks.sh into a function
This prepares for adding the ability to undo the setup. Change-Id: Ie3fa3a76715663d9785a1d2f9d88ab20e0d07dce Signed-off-by: Ben Walker <benjamin.walker@intel.com> Reviewed-on: https://review.gerrithub.io/393829 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
This commit is contained in:
parent
b21fad1a80
commit
5318d33318
@ -1,41 +1,45 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
echo -n "Placing all CPUs in performance mode..."
|
||||
for governor in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do
|
||||
echo -n performance > $governor
|
||||
done
|
||||
echo "Done"
|
||||
function configure_performance() {
|
||||
echo -n "Placing all CPUs in performance mode..."
|
||||
for governor in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do
|
||||
echo -n performance > $governor
|
||||
done
|
||||
echo "Done"
|
||||
|
||||
echo -n "Disabling irqbalance service..."
|
||||
service irqbalance stop 2> /dev/null
|
||||
echo "Done"
|
||||
echo -n "Disabling irqbalance service..."
|
||||
service irqbalance stop 2> /dev/null
|
||||
echo "Done"
|
||||
|
||||
echo -n "Moving all interrupts off of core 0..."
|
||||
count=`expr $(nproc) / 4`
|
||||
cpumask="e"
|
||||
for ((i=1; i<$count; i++)); do
|
||||
if [ `expr $i % 8` -eq 0 ]; then
|
||||
cpumask=",$cpumask"
|
||||
fi
|
||||
cpumask="f$cpumask"
|
||||
done
|
||||
for file in /proc/irq/*/smp_affinity; do
|
||||
echo "$cpumask" > $file 2> /dev/null
|
||||
done
|
||||
echo "Done"
|
||||
echo -n "Moving all interrupts off of core 0..."
|
||||
count=`expr $(nproc) / 4`
|
||||
cpumask="e"
|
||||
for ((i=1; i<$count; i++)); do
|
||||
if [ `expr $i % 8` -eq 0 ]; then
|
||||
cpumask=",$cpumask"
|
||||
fi
|
||||
cpumask="f$cpumask"
|
||||
done
|
||||
for file in /proc/irq/*/smp_affinity; do
|
||||
echo "$cpumask" > $file 2> /dev/null
|
||||
done
|
||||
echo "Done"
|
||||
|
||||
echo -n "Configuring kernel blk-mq for for NVMe SSDs..."
|
||||
for queue in /sys/block/nvme*n*/queue; do
|
||||
if [ -f "$queue/nomerges" ]; then
|
||||
echo "1" > $queue/nomerges
|
||||
fi
|
||||
echo -n "Configuring kernel blk-mq for for NVMe SSDs..."
|
||||
for queue in /sys/block/nvme*n*/queue; do
|
||||
if [ -f "$queue/nomerges" ]; then
|
||||
echo "1" > $queue/nomerges
|
||||
fi
|
||||
|
||||
if [ -f "$queue/io_poll" ]; then
|
||||
echo "1" > $queue/io_poll
|
||||
fi
|
||||
if [ -f "$queue/io_poll" ]; then
|
||||
echo "1" > $queue/io_poll
|
||||
fi
|
||||
|
||||
if [ -f "$queue/io_poll_delay" ]; then
|
||||
echo "-1" > $queue/io_poll_delay
|
||||
fi
|
||||
done
|
||||
echo "Done"
|
||||
if [ -f "$queue/io_poll_delay" ]; then
|
||||
echo "-1" > $queue/io_poll_delay
|
||||
fi
|
||||
done
|
||||
echo "Done"
|
||||
}
|
||||
|
||||
configure_performance
|
||||
|
Loading…
Reference in New Issue
Block a user