i've found that pv is useful for this purpose. however i've never been quite clear on what the best way to use bs with pv is. is it
dd if=/dev/sda bs=1M | pv > sda.file
or is this better dd if=/dev/sda bs=1M | pv | dd of=sda.file bs=1M