Hi Coreutils. $ ./dd if=/dev/zero of=/dev/null bs=2G
gives the following in 'top': 23182 tange 20 0 2058m 2.0g 616 R 100 25.8 0:25.13 dd So it actively uses 2 G. This is exactly what I would expect. However, if I use 10G it mallocs 10 G but only uses 2 G: $ ./dd if=/dev/zero of=/dev/null bs=10G Apparently all I need to do is: ./dd iflag=fullblock if=/dev/zero of=/dev/null bs=10G But for a normal user (indeed for me before I read the source) this comes as a surprise. I would like to suggest that if bs is bigger than the used block, then you get a warning like this: dd: given bs=10G but used bs=2G. To force using 10G use 'iflag=fullblock' Also the man page should refer to 'iflag=fullblock' under 'bs' and 'ibs'. $ ./dd --version dd (coreutils) 8.12 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Paul Rubin, David MacKenzie, and Stuart Kemp. /Ole
