Last active
February 3, 2020 13:49
-
-
Save oc/1c2c1d2ecb3cf566798fb5e828589bf7 to your computer and use it in GitHub Desktop.
This file contains hidden or 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
## | |
# | |
# in one window track vmstat wait time | |
# | |
# iostat -o JSON -x $(df /home/oracle | tail -n 1 | awk '{print $1}') 1 > /tmp/bench-iostat.json | |
# | |
# Or: | |
# vmstat 1 > /tmp/bench-vmstat.log | |
# | |
# in another run the benchmark: | |
# sh simple-dd.sh >/tmp/benchmark.log 2>&1 | |
# | |
TMPDIR=$(mktemp -d) | |
echo ">>> WRITE baseline (64M)" | |
time dd if=/dev/zero of=$TMPDIR/64M.zero bs=64M count=1 oflag=dsync | |
echo "<<< READ baseline (128 blocks)" | |
time dd if=$TMPDIR/64M.zero of=/dev/null bs=128 | |
echo "<<< READ baseline (2k blocks)" | |
time dd if=$TMPDIR/64M.zero of=/dev/null bs=2k | |
echo "<<< READ baseline (4k blocks)" | |
time dd if=$TMPDIR/64M.zero of=/dev/null bs=4k | |
echo "<<< READ baseline (8k blocks)" | |
time dd if=$TMPDIR/64M.zero of=/dev/null bs=8k | |
## | |
echo ">>> WRITE (256M)" | |
dd if=/dev/zero of=$TMPDIR/256M.zero bs=1M count=256 conv=fdatasync | |
echo "<<< Read speed 256M file (128 units)" | |
flush | |
echo 3 | sudo tee /proc/sys/vm/drop_caches | |
time dd if=$TMPDIR/256M.zero of=/dev/null bs=128 | |
## | |
echo ">>> WRITE (1G)" | |
time dd if=/dev/zero of=$TMPDIR/1G.zero bs=1G count=1 oflag=dsync | |
echo "<<< Read speed 1G file (2k units)" | |
flush | |
echo 3 | sudo tee /proc/sys/vm/drop_caches | |
time dd if=$TMPDIR/1G.zero of=/dev/null bs=2k | |
| |
## | |
echo ">>> WRITE: Create BIG file (4096m) from chunks" | |
time dd if=/dev/urandom of=$TMPDIR/BIG.zero bs=32M count=128 iflag=fullblock | |
echo "<<< Read speed BIG file (8k units)" | |
flush | |
echo 3 | sudo tee /proc/sys/vm/drop_caches | |
time dd if=$TMPDIR/BIG.zero of=/dev/null bs=8k | |
## | |
echo "*********************************************************" | |
echo "*********************************************************" | |
echo "*********************************************************" | |
echo ">>> WRITE latency (small writes - 512)" | |
time dd if=/dev/zero of=$TMPDIR/512_10k.zero bs=512 count=10k oflag=dsync | |
| |
echo ">>> WRITE latency (tiny writes - 32)" | |
time dd if=/dev/zero of=$TMPDIR/32_10k.zero bs=32 count=10k oflag=dsync | |
# Cleanup | |
rm -fr $TMPDIR |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment