Andrew Martin
2014-03-13 20:12:16 UTC
Hello,
I am working on setting up bcache on Ubuntu 13.10 (with kernel 3.11.0-17)
for read performance testing in writethrough mode. I've written a test script
which uses dd to write data to the bcache device, read it back in, and then
attempt to read it again (to measure cache speed):
# write the data to the disk
dd if=/dev/zero of=/path/to/bcache/mount/file.raw bs=512 count=2
# read the data (using iflag=nocache to make sure it gets into bcache's
# cache and doesn't use the kernel's cache)
dd if=/path/to/bcache/mount/file.raw of=/dev/null iflag=nocache
# now perform the read, which should read from bcache's cache
dd if=/path/to/bcache/mount/file.raw of=/dev/null iflag=nocache
However, if I cat /sys/block/bcache0/bcache/cache/cache_available_percent
before and after performing the read, the value is always 100. Would using
iflag=direct be better than iflag=nocache in this case? Is there a better
way to force data into the cache for this type of performance benchmarking?
Thanks,
Andrew Martin
I am working on setting up bcache on Ubuntu 13.10 (with kernel 3.11.0-17)
for read performance testing in writethrough mode. I've written a test script
which uses dd to write data to the bcache device, read it back in, and then
attempt to read it again (to measure cache speed):
# write the data to the disk
dd if=/dev/zero of=/path/to/bcache/mount/file.raw bs=512 count=2
# read the data (using iflag=nocache to make sure it gets into bcache's
# cache and doesn't use the kernel's cache)
dd if=/path/to/bcache/mount/file.raw of=/dev/null iflag=nocache
# now perform the read, which should read from bcache's cache
dd if=/path/to/bcache/mount/file.raw of=/dev/null iflag=nocache
However, if I cat /sys/block/bcache0/bcache/cache/cache_available_percent
before and after performing the read, the value is always 100. Would using
iflag=direct be better than iflag=nocache in this case? Is there a better
way to force data into the cache for this type of performance benchmarking?
Thanks,
Andrew Martin