[fpc-pascal] Fast CRC functions?
Mark Morgan Lloyd
markMLl.fpc-pascal at telemetry.co.uk
Mon Aug 25 12:12:56 CEST 2014
Juha Manninen wrote:
> Ok, thanks. This is yet another topic I should learn about.
>
> Tony, I don't believe pycrc can generate much faster functions than
> ours unless it uses SIMD.
> Our function works well but it is called so ofter that its speed is relevant.
>
> Mark, I promise to study the algorithms but changing our algorith is
> not an option now. We want the same but faster.
> Maybe loop unrolling can make it little faster but nothing compared to
> a SIMD version of course.
My point was to take a look at the ones in the library, and see if one
matches and if so whether it's faster (and then work out why). However
I'm a bit dubious about your and $00FFFFFF operation which I suspect
makes your implementation non-standard.
Loop unrolling may be an option, as might making sure that FPC is
compiling the CRC generator with the best possible set of options. Using
a thread probably isn't unless the buffers are large and you've got
other useful work to do in parallel.
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
More information about the fpc-pascal
mailing list