komrad36 / crc Goto Github PK
View Code? Open in Web Editor NEWFastest CRC32 for x86, Intel and AMD, + comprehensive derivation and discussion of various approaches
License: MIT License
Fastest CRC32 for x86, Intel and AMD, + comprehensive derivation and discussion of various approaches
License: MIT License
With reference to https://www.corsix.org/content/fast-crc32c-4k, what I call crc32_4k
is your option 12 ("8-byte Hardware-accelerated"), and what I call crc32_4k_three_way
is your option 13 ("Golden"). The theoretical upper bound on option 13 is 64 bits/cycle, which your implementation gets close to, at 62 bits/cycle. What I realised is that:
crc32_4k_pclmulqdq
, but you might call "Silver".No license is currently provided for this project. Your work is quite nice, so it'd be cool to know what it can be used in.
I find that the results of option_13_golden_intel
don't match the crc32 values I'm expecting. The results match neither the crc32c library, nor zlib's crc32()
.
An example test string: hello-world
tested between zlib, crc32c, and this package:
truth: 2983461467, zlib: 2983461467, crc32c: 4099351003, crc: 1585878819
A related discussion is at htot/crc32c#3. Do you know exactly which implementation of crc32 this library is producing?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.