[Mono-dev] SHA1Managed speedups
alan.mcgovern at gmail.com
Tue Apr 29 09:36:50 EDT 2008
> Please remove the unsafe keyword from both methods.
Ah, sorry. I attached the wrong patch. Kangaroo had already pointed
out that i had left in the unsafe keyword as part of my copy/paste
from my working copy and i thought i recreated the patch when i fixed
that, but obviously not.
> Please always provide numbers (and the test cases) with performance
> patches. Also compare the results with the code already in SVN (not the
> previous releases) this way we compare the patch with the gain it
The 'Big Win' in this patch is unrolling the first loop. I'll attach
some numbers later giving exact details as to where the gains are as
compared to SVN head.
> He asked me, more than once, to consider re-rolling the
> SHA1 code. This piece of code is often the largest one the JIT is likely
> to compile, as since it's used for assembly names it's a performance
> (JIT time) hit being transfered to most Mono applications.
If the JIT cost is prohibitive to making this patch acceptable, i can
test partial unrolling of all the loops. I should be able to cut the
codesize by a large proportion while still getting the majority of the
speed beneffits. I'll testbench that later too.
More information about the Mono-devel-list