I tested the speed of md5sum
on a few Ubuntu 8.04 servers
- Pentium III 700 MHz: 52 MB/s
- Atom 1.6 GHz, 32-bit: 119 MB/s
- Core 2 (Yorkfield) 2.5GHz, 32-bit: 194 MB/s
- Core 2 (Yorkfield) 2.5GHz, 64-bit: 222 MB/s
Then I downloaded a tool (by apt-get install
) called md5deep
and found that it's roughly 20% faster (as tested on the 32-bit Core 2 server). This makes me feel that the "vanilla" md5sum
included in Ubuntu isn't the fastest one.
Questions:
- Other than
md5deep
, are you aware of any MD5 calculators that are potentially faster thanmd5sum
? (Answers for software from other OS are also welcomed.) - If I want to compile
md5sum
myself, what compiler options would you suggest for the Core 2 server? (note:gcc
4.2.4 in Ubuntu 8.04 does not seem to support-march=core2
)
Edit: I downloaded and compiled coreutils-8.4 on the 64-bit Core 2 server and the speed increased to 320 MB/s... Unbelievable!
FYI, the one included in Ubuntu 8.04 is coreutils-6.10.
Is it safe to replace coreutils with a newer version?
md5sum
speed is the same if I pipe null bytes intomd5sum
on the fly. I decided to use the latter method so that servers without 1GB RAM can also be tested.