Skip to content

Slice-by-16 CRC32 #12

Closed
Closed

Description

@101arrowz

You can improve the performance of the CRC32 with slice-by-16; POC here. I've tested it extensively and all of the weird quirks (e.g. incrementing 16 times per loop instead of just adding and incrementing after each iteration) are the fastest possible method.

Activity

  1. added this to the v2 milestone on Sep 22, 2021
  2. self-assigned this
    on Feb 16, 2023
  3. removed this from the v2 milestone on Feb 16, 2023
  4. added this to the v3 milestone on Oct 14, 2026
  5. matmen commented on Oct 14, 2026

    @matmen
    Collaborator

    Shipped in 3.0.0, thanks a lot for this! The slice-by-16 CRC is now used for PNG chunk checksums (about 2.4× the throughput of the old byte-wise loop). It’s credited in the source and in THIRD_PARTY_NOTICES.md, along with fflate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions