Sander Striker wrote:
> Another thing is the md5 checksums. We might want to think about a
> little less CPU intensive algorithm, since this one is up there aswell.
> MD5Transform (which is internal to apr, called by apr_md5_update) is taking
> ~15% of total checkout time over ra_local. It's at the very top of the
> flat profile.
This data surprised me, so I did some testing that might be of interest.
I added code to apr-util to count the number of bytes summed, and for
your test case, which contains around 290 MiB data, I found that 1181
MiB was summed (using svn from trunk). I am not familiar with the use of
checksums in subversion, but it might be possible to reduce the amount
of summing.
Openssl has a nice speed test for its algorithms, and for MD5 I get the
following (using "openssl speed md5"):
> The 'numbers' are in 1000s of bytes per second processed.
> 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
> 13938.39k 48742.55k 142615.89k 277656.06k 379101.18k
In other words, it sums hundreds of megabytes per second. This openssl
(from RedHat Linux 9) was compiled with -DMD5_ASM, and I'm running it on
an Athlon XP 2700+ with Linux 2.6.0-test4.
/Tobias
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Aug 24 22:22:00 2003