fhs / CRC32.jl

32-bit cyclic redundancy check (CRC-32) checksum implementation for Julia

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Another CRC Package

andrewcooke opened this issue · comments

Hi Fazlul,

Thanks for writing this - it helped me understand CRCs a while back....

...As a consequence of which, I've written a Julia package that calculates CRCs for a wide range of different algorithms (not just CRC32). It's available at https://github.com/andrewcooke/CRC.jl and is comparable in speed to the zlib version.

So I wondered if you would mind adding a link to that package somewhere in your README so that Julia users can see all the choices? I've already included a link to CRC32.jl from my own package docs.

Cheers, Andrew

Nice work. I've made the changes to README. I'd love to see some actual benchmarks. How comparable is it to zlib?

Thanks!

Timing is pretty much identical to C (I ended up copying the approach in libz, so the final execution is very close). If you look at the test output at https://travis-ci.org/andrewcooke/CRC.jl there are various times (near the bottom). The first is for libz and the next two are for CRC.jl (different sized tables). On the Travis test machine the fastest CRC.jl number (which is what is used by default) is 50% slower, which isn't so great, but on my laptop it's actually a 15% faster (0.25s for libz and 0.21s for CRC.jl).