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

我刚试过杂音哈希C#端口……

但是我对它的表现非常失望.它似乎比内置的C#MD5 / SHA1 computeHash方法慢.

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

最佳答案 我找到了原因,它应该设置为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

点赞