首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >红宝石中的SHA512和SIMD

红宝石中的SHA512和SIMD
EN

Stack Overflow用户
提问于 2016-05-18 18:53:36
回答 1查看 482关注 0票数 0

英特尔处理器允许更快地计算SHA512,因为他们进行了SIMD优化。我想利用Ruby的优势。然而,SHA512的实现并不使用SIMD https://github.com/ruby/ruby/blob/trunk/ext/digest/sha2/sha2.c,对吗?

有没有任何方法可以统一使用SIMD优化来计算SHA512?

EN

回答 1

Stack Overflow用户

发布于 2016-05-19 07:44:20

英特尔于2012年11月发布了一篇关于SIMD加速SHA512的论文

他们说他们的AVX版本在沙桥i7 2600上有8.59个周期/字节。他们没有发布他们的AVX2 / rorx (BMI2)版本的结果,因为Haswell还没有发布。我没有跟踪到源代码的链接,大概是C的内部代码。

要在ruby的源代码中实现它,您需要处理这样的情况:ruby运行在不支持快速版本使用的指令集扩展的CPU上,然后返回到纯C或SSE2 2版本。

您最好的选择可能是让ruby使用OpenSSL、或类似的库来获得SHA-512和许多其他函数的手工调优版本。密码库已经为许多不同的平台提供了手工调优的asm版本。

与Skylake (和戈德蒙特)一起,英特尔推出了加速SHA-1和SHA-256的新指令。不幸的是,我没有看到任何关于能够使用这些指示的SHA-512。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37307936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档