Review Request: faster kmd5

Rolf Eike Beer kde at opensource.sf-tec.de
Sun Jul 31 18:52:25 BST 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102165/#review5284
-----------------------------------------------------------



kdecore/text/kcodecs.cpp
<http://git.reviewboard.kde.org/r/102165/#comment4785>

    Please remove this register keyword. In best case the compiler moves this value into a register where he had placed it anyway. But usually you force a value into a register that the compiler could use for something better.


- Rolf Eike


On July 31, 2011, 5:28 p.m., Jaime Torres Amate wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/102165/
> -----------------------------------------------------------
> 
> (Updated July 31, 2011, 5:28 p.m.)
> 
> 
> Review request for kdelibs.
> 
> 
> Summary
> -------
> 
> I think the private methods can be changed without chaning the binary interface..
> In that case, I've changed some kmd5 methods to make them const, and pass const numbers.
> Also, in the transform method I've added register to the a,b,c,d variables, changing the FF, GG, HH ad II to return qint32 (hopefully in a register also).
> 
> In any case, the memset at the end of transform can be avoided. 
> There is also a little change to not declare and inicialize and never use a variable in quotedprintable.
> 
> 
> Diffs
> -----
> 
>   kdecore/text/kcodecs.h 023a129 
>   kdecore/text/kcodecs.cpp ce0e48d 
> 
> Diff: http://git.reviewboard.kde.org/r/102165/diff
> 
> 
> Testing
> -------
> 
> Running kphotoalbum maintenance|Recalculate checksum, that makes extensive use of kmd5, under callgrind, it shows that the new version is faster.
> At least in an AMD64.
> In the old way, FF, GG, HH and II calls in the transform method took 1,10%; 1,07%; 1,00%; 1,03%  +0,33% passing parameters
> In the new way, FF, GG, HH and II calls in the transform method take 0,83%; 0,80%; 0,76%; 0,78%  +0,21% passing parameters
> 
> I've tried also the kmd5benchmarktest, but I do not understand very well the results (or if they are as accurate as callgrind).
> 
> 
> Thanks,
> 
> Jaime Torres
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20110731/4030c3e3/attachment.htm>


More information about the kde-core-devel mailing list