While looking for ways to stress an SDcard, I've noticed there are two ways one can approach this. One is to stress it by reading/writing blocks directly to the device file.

For example:

sudo badblocks -b 512 -w -v /dev/mmcblk0

However there are also utilities that perform stress test on file level and accept a mounted partition as input. For example stressdisk.

From my perspective, the file based approach introduces additional uncertainty. We don't know what the file system might end up doing.

  • What if it caches file writes?
  • Can the issues end up being logical file system errors not related to storage media failures?

Are those reasonable doubts? What would be the use cases for one against the other?

  • 1
    A stress test program will most likely take steps to ensure that data written to files is actually flushed to persistent storage. As for "logical file system errors not related to storage media failures", they can be detected and corrected. You should note that "blocks" on flash media are purely virtual constructions (created on the fly by the microcontroller) which have no fixed relationship with physical storage. – AlexP Jun 19 '18 at 11:50
  • @slm Not sure I got the trying to roll it out yourself. They are both stress testing software, no? – TheMeaningfulEngineer Jul 2 '18 at 11:24
  • Misunderstood your ask. Your asking what are the differences b/w block vs. filelevel stress testing. – slm Jul 2 '18 at 11:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.