- for better performace use the biggest blocksize you RAM can accomodate (will send less I/O calls to the OS)
- for better accurancy and data recovery set the blocksize to the native sector size of the input
As dd copies data with the conv=noerror,sync option, any errors it encounters will result in the remainder of the block being replaced with zero-bytes. Larger block sizes will copy more quickly, but each time an error is encountered the remainder of the block is ignored.
source