so why even use pv since all you’re doing is measuring your RAM speed and available cache size
This is probably why pv progress fills in a second but is only done after a few minutes. Nonetheless, shell redirect, cat, cp work fine and handle blocksize and cache dynamically.
Your worst case scenario never happened to me after years of using pv/cp for flashing sticks/overwriting/copying partitions, even with some …risky mount settings. Honestly doesn’t make much sense to me either. Again, dd isn’t some sort of magical safe handle to make the process progress smoothly. Like i use to say, dd is a skalpell, not a shovel.