fio-cdm
fio-cdm copied to clipboard
Update to reflect recent "upstream" CDM test changes
Thanks for fixing my other issue. I don't know if you are generally interested in improving fio-cdm further, but I'm going to submit a couple of suggestions if that's OK.
At the moment, fio-cdm outputs the results of the following tests:
- Seq
- 512K
- 4K
- 4KQD32
This used to be the same as older versions of Crystal Disk Mark, see for example:
But newer versions of Crystal Disk Mark seem to use the following tests by default:
- Seq Q32T1
- 4K Q32T1
- Seq
- 4K
I don't know why they changed, but it might be worth researching this to see if you can do the same in fio-cdm. https://crystalmark.info/software/CrystalDiskMark/manual-en/History.html may be a good place to start looking.
I also notice in that History file that in 5.0.0 they did "Changed test order (all read test -> all write test)". Again, I don't know if that's important, but it might be worth changing fio-cdm to do the same.
I don't expect we'll ever get to the point where fio-cdm results are directly comparable to CDM, but it would be good to get close.
Additional info:
Seq Q32T1: Sequential (Block Size=128KiB) Read/Write with multi Queues & Threads
4K Q32T1: Random 4KiB Read/Write with multi Queues & Threads
Seq: Sequential (Block Size=1MiB) Read/Write with single Thread
4K: Random 4KiB Read Write with single Queue & Thread
You can customize the number of Queues & Threads from "Settings > Queues & Threads" menu.
And there is a 0x00 (0 Fill) test option too.
According to a comment here: https://unix.stackexchange.com/questions/93791/benchmark-ssd-on-linux-how-to-measure-the-same-things-as-crystaldiskmark-does-i#comment748501_392091 The seq r/w results do not match with the original CDM results and the --bs (I guess buffer size) must be much bigger than 1m to get closer results.
Take a look at my fork: https://github.com/0xFelix/fio-cdm
It tries to mimic CrystalDiskMark 6. The results should be quite comparable.
This is my python version with a lot of customizabilities (it works on Windows, too): https://github.com/OliverLew/fio-cdm It can solve a lot of the feature requests and I plan to work on some more. But caution the result could be incorrect due to my fio settings :)