为什么杂音比内置的MD5/SHA1方法慢

本文关键字:SHA1 方法 MD5 内置 为什么 | 更新日期: 2023-09-27 18:00:23

我刚刚尝试了杂音散列C#端口…

然而,我对它的表现感到非常失望。它似乎比内置的C#MD5/SHA1 computeHash方法慢。

调试模式很好,在该模式下杂音更快。如果切换到Release模式,它比SHA1或MD5哈希方法慢。

为什么杂音比内置的MD5/SHA1方法慢

我找到了原因,它应该设置为x64或anycpu,而不是x86

这是测试结果。

Release - Target AnyCPU

Murmur Hash profile...
 test Bytes     :2621440000
 iterations     :10000
 totalSeconds   :**1.787**
 bytesPerSecond :1466950195.85898
 mbitsPerSecond :1398.99272523783


BuildinSHA Hash profile...
 test Bytes     :2621440000
 iterations     :10000
 totalSeconds   :**5.956**
 bytesPerSecond :440134318.334453
 mbitsPerSecond :419.74479516454
Release - Target X86
Murmur Hash profile...
 test Bytes     :2621440000
 iterations     :10000
 totalSeconds   :10.612
 bytesPerSecond :247026008.292499
 mbitsPerSecond :235.582359592914

BuildinSHA Hash profile...
 test Bytes     :2621440000
 iterations     :10000
 totalSeconds   :5.987
 bytesPerSecond :437855353.265408
 mbitsPerSecond :417.571404710205
Release - Target X64

Murmur Hash profile...
 test Bytes     :2621440000
 iterations     :10000
 totalSeconds   :1.732
 bytesPerSecond :1513533487.29792
 mbitsPerSecond :1443.41801385681

BuildinSHA Hash profile...
 test Bytes     :2621440000
 iterations     :10000
 totalSeconds   :5.968
 bytesPerSecond :439249329.758713
 mbitsPerSecond :418.900804289544

Soure代码:

https://github.com/arisoyang/Murmur3Hash