我在我的项目中使用openssl加密文件。加密/解密过程花费了太多的时间。那么,我应该使用哪个版本的openssl来提高速度呢?有更轻的版本吗?
我还观察到openssl-1.0.2a (最新的)在速度方面表现最差。但是如果我用O3优化来构建它,性能会更好。但是对于较低的版本,性能并没有在很大程度上提高优化。为什么会这样呢?
发布于 2015-06-25 21:00:19
哪个版本的openssl提供了更好的速度?
它依赖于许多东西,包括硬件和算法。
加密/解密过程花费了太多的时间。
算是亲戚。
我还观察到openssl-1.0.2a (最新的)在速度方面表现最差。
但是你没有告诉我们你的硬件,你的算法选择,或者给我们看你的代码.
但是如果我用O3优化来构建它,性能会更好。
我发现-Os通常提供最好的性能,因为小代码使缓存变得更热。这取决于硬件,但我发现它适用于i386、x86_64和ARM。ARM处理器很多,但我测试的是商品化处理器,比如Android (5TE和7/7A)。
那么,我应该使用哪个版本的openssl来提高速度呢?
它们应该是大致相同的,使用no-asm构建模块。
此外,您还需要使用接口。你是否做过那件事还不清楚。
EVP_Encrypt (和朋友)使用硬件加速,如果可用的话。这包括x86_64上的AES-NI。
如果您使用AES_encrypt (和朋友),那么它只是一个软件实现,而且永远不会使用硬件加速。
此外,您还需要发布来自openssl speed的数字。这是基准测试的基准。
最后,英特尔在提高OpenSSL性能有一份白皮书。
https://stackoverflow.com/questions/31047096
复制相似问题