Created
February 25, 2020 20:09
-
-
Save vineethrp/4356e66694269d1525ff254d7f213aef to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
set -e | |
#set -x | |
CPUS="0-11,24-35" | |
echo "Creating cgroups.." | |
sudo cgcreate -g cpu,cpuset:set1 | |
sudo cgcreate -g cpu,cpuset:set2 | |
echo "Setting cpuset.cpus to $CPUS..." | |
sudo cgset -r cpuset.cpus="$CPUS" set1 | |
sudo cgset -r cpuset.cpus="$CPUS" set2 | |
echo "Setting cpuset.mems to 0..." | |
sudo cgset -r cpuset.mems=0 set1 | |
sudo cgset -r cpuset.mems=0 set2 | |
echo "Setting shares..." | |
sudo cgset -r cpu.shares=10240 set1 | |
sudo cgset -r cpu.shares=2 set2 | |
echo "Setting tags..." | |
sudo cgset -r cpu.tag=1 set1 | |
sudo cgset -r cpu.tag=1 set2 | |
for j in $(seq 1 16); do | |
sudo cgexec -g cpu,cpuset:set1 sysbench --test=cpu --cpu-max-prime=100000 --max-time=30 run > "out/log.set1.$j" 2>&1 & | |
done | |
for j in $(seq 1 32); do | |
sudo cgexec -g cpu,cpuset:set2 sysbench --test=cpu --cpu-max-prime=100000 --max-time=30 run > "out/log.set2.$j" 2>&1 & | |
done | |
wait | |
echo "("`grep "events per second" out/log.set1.*|awk '{print $5}'|tr '\n' '+'`"0.0)/16" | bc -l | |
echo "("`grep "events per second" out/log.set2.*|awk '{print $5}'|tr '\n' '+'`"0.0)/32" | bc -l | |
sudo cgset -r cpu.tag=0 set1 | |
sudo cgset -r cpu.tag=0 set2 | |
sudo cgdelete -g cpu,cpuset:set1 | |
sudo cgdelete -g cpu,cpuset:set2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
sudo cgexec -g cpu,cpuset:set2 /usr/local/bin/sysbench --test=cpu --threads=24 --cpu-max-prime=100000 --time=35 run > "out/log.set2" 2>&1 &
sleep 5
sudo cgexec -g cpu,cpuset:set1 /usr/local/bin/sysbench --test=cpu --threads=12 --cpu-max-prime=100000 --time=30 run > "out/log.set1" 2>&1 &