Type: Package
Title: Cyclic Redundancy Check with CPU-Specific Acceleration
Version: 0.0.3
Date: 2025-03-25
Description: Hardware-based support for 'CRC32C' cyclic redundancy checksum function is made available for 'x86_64' systems with 'SSE2' support as well as for 'arm64', and detected at build-time via 'cmake' with a software-based fallback. This functionality is exported at the 'C'-language level for use by other packages. 'CRC32C' is described in 'RFC 3270' at https://datatracker.ietf.org/doc/html/rfc3720 and is based on 'Castagnoli et al' <doi:10.1109/26.231911>.
URL: https://github.com/google/crc32c, https://github.com/eddelbuettel/crc32c
BugReports: https://github.com/eddelbuettel/crc32c/issues
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
LinkingTo: tidyCpp
SystemRequirements: cmake
Encoding: UTF-8
RoxygenNote: 6.0.1
NeedsCompilation: yes
Packaged: 2025-03-25 14:04:53 UTC; edd
Author: Dirk Eddelbuettel ORCID iD [aut, cre], The CRC32C Authors [aut] (See file src/crc32c/AUTHORS)
Maintainer: Dirk Eddelbuettel <edd@debian.org>
Repository: CRAN
Date/Publication: 2025-03-25 18:30:05 UTC

Cyclic Redundancy Check with CPU-Specific Acceleration

Description

Hardware-based support for 'CRC32C' cyclic redundancy checksum function is made available for 'x86_64' systems with 'SSE2' support as well as for 'arm64', and detected at build-time via 'cmake' with a software-based fallback. This functionality is exported at the 'C'-language level for use by other packages. 'CRC32C' is described in 'RFC 3270' at <https://datatracker.ietf.org/doc/html/rfc3720> and is based on 'Castagnoli et al' <doi:10.1109/26.231911>.

Package Content

Index of help topics:

crc32c                  Cyclic Redundancy Check with Hardware Support
crc32c-package          Cyclic Redundancy Check with CPU-Specific
                        Acceleration

Maintainer

Dirk Eddelbuettel

Author(s)

The CRC32C Authors for the ‘crc32c’ library; Dirk Eddelbuettel for the package.


Cyclic Redundancy Check with Hardware Support

Description

The crc32c implementation with hardware support via SSE2 instructions on ‘x86_64’ platforms as well as on ‘arm64’ is provided by using the code from the repository at https://github.com/google/crc32c.

Usage

crc32c(x)

Arguments

x

A character vector

Value

A character vector of the same length as the incoming vector, with a crc43c checksum in hexadecimal as a character value of length eight in each element.

References

https://datatracker.ietf.org/doc/html/rfc3720, doi:10.1109/26.231911

See Also

https://github.com/google/crc32c

Examples

crc32c("abc")

mirror server hosted at Truenetwork, Russian Federation.