I am conducting a performance experiment for a Linux program that takes input data, processes it, and writes data to a block device
Even though I know how much data the input is (for example, 1GB), I do not know exactly how much data is written to the block device since the program will process it (including deleting some intermediate data, write extra data).So this is not good to calculate the entire throughput for the block device.
I once used
blktrace, but it can easily get tons of data, which I am not sure is able to work for the past 1hr.
FIO is able to benchmark IO device, but I specifically want to test the block IO device behavior under this program. So basically I am actually testing the combination of block IO device and the program instead of just the block IO device.
I thought about the
du -sh approach as well, but
du -sh is unable to catch the deleted data amount. Besides, can
du -sh catch the data written to the physical device? I mean, not to the file system.
Is there any other tool to use?