Skip to content

Instantly share code, notes, and snippets.

@caleblloyd
Created December 1, 2015 14:19
Show Gist options
  • Save caleblloyd/fd1452027e93d6ad0cd2 to your computer and use it in GitHub Desktop.
Save caleblloyd/fd1452027e93d6ad0cd2 to your computer and use it in GitHub Desktop.

Linux Bare Metal

base="/tmp/storage-bench-file"
clearcache="sync && echo 3 > /proc/sys/vm/drop_caches"
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=$base-w count=512 bs=1024k; rm -f $base-w; done
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=/dev/null bs=4096k; done
rm -f $base

Linux Container

docker run --privileged -it ubuntu bash
base="/tmp/storage-bench-file"
clearcache="sync && echo 3 > /proc/sys/vm/drop_caches"
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=$base-w count=512 bs=1024k; rm -f $base-w; done
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=/dev/null bs=4096k; done
rm -f $base

OSX Bare Metal

base="/tmp/storage-bench-file"
clearcache="sudo purge"
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=$base-w count=512 bs=1024k; rm -f $base-w; done
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=/dev/null bs=4096k; done
rm -f $base

Guest Container (using Vagrant)

docker run --privileged -v /vagrant:/vagrant -it ubuntu bash
base="/tmp/storage-bench-file"
shared="/vagrant/storage-bench-file"
clearcache="sync && echo 3 > /proc/sys/vm/drop_caches"
dd if=/dev/urandom of=$base count=512 bs=1024k
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=$base-w count=512 bs=1024k; rm -f $base-w; done
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=/dev/null bs=4096k; done
for i in `seq 1 3`; do eval $clearcache && dd if=$base of=$shared count=512 bs=1024k; done
for i in `seq 1 3`; do eval $clearcache && dd if=$shared of=/dev/null bs=4096k; done
rm -f $base $shared
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment