公开intel sse4.2 crc32c指令的python包

crc32c的Python项目详细描述


https://travis-ci.org/ICRAR/crc32c.svg?branch=masterhttps://ci.appveyor.com/api/projects/status/lamys36iude1x180/branch/master?svg=truehttps://badge.fury.io/py/crc32c.svg

这个包向python公开了在sse 4.2中实现的crc32c算法。 英特尔CPU的指令集。

因为crc32c在pypi中,所以可以使用以下命令安装它:

pip install crc32c

支持的平台是使用gcc和clang编译器的linux和osx, 以及使用visual studio编译器的windows。中的其他编译器 windows(比如mingw)可能可以工作。

实施细节

默认情况下, 如果您的CPU不支持此指令,则包将无法加载 有一个ImportError。 如果仍然需要使用CRC32C校验和算法 这个软件包附带了一个软件实现 可以加载。 为此,设置CRC32C_SW_MODE环境变量 设置为下列值之一:

  • auto:如果找不到CPU硬件支持,请使用软件实现。
  • force:使用软件实现,而不考虑CPU硬件支持。
  • 1:类似于force,但最终将停止使用。

基于硬件和软件的算法 基于Mark Adler’s code, 需要做一些修改 使代码更易于移植 适合包含在这个python包中。

许可证

此软件包是根据lgpl-2.1许可证授权的。

原始CRC32C算法的代码, 软件和硬件, 根据BSD 3条款许可证获得许可。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将asynchttpclient作为maven项目发送异步post请求并运行   java无法查找JNDI   java NavigationView仅在   实现ApplicationListener的java Spring控制器   java如何在Maven项目的类路径中设置TestNG?   JSTL<c:if>标记中的java测试属性   java Show toast错误并在没有可用连接时阻止显示webview   java多线程中的并发性   如何使用java获取一个月的第一个星期日   java spring安全性angularjs 403   maven SASS的Java实现?   Android上的java MD5怪异行为   java shutdownNow()然后重新调度ScheduledThreadPoolExecutor:如何?   java如何在读取文本文件后生成数组