vnmakarov / mum-hash

Hashing functions and PRNGs based on them
145 stars 12 forks source link

Benchmark against BLAKE2 #5

Open kwinz opened 8 years ago

kwinz commented 8 years ago

Hi,

could you please benchmark against BLAKE2b and BLAKE2s if it's not too much hassle? It tries to be a very fast cryptographically secure hash function. I believe it to be still ballpark 10x slower than MUM but it would be nice to know for sure! Of course it would also make sense to compare it with MUM512. Thanks in advance!

[1] https://blake2.net/

vnmakarov commented 8 years ago

Thank you for the proposal. I've added sse version of blake2b for comparison of crypto-hash functions and blake2 speed results to README.md file. Basically Blake2B is a bit faster than MUM512.

As for the comparison of blake2 with non crypto hash functions, I don't think it is necessary. Blake2 has a different application target. But still I ran SSE blake2b (with -march=native) vs MUM and here are the results on i7-4790K:

+++5-byte speed (1,280M keys):
MUM      :  8.52s
Blake2:  398.43s
+++8-byte speed (1,280M keys):
MUM      :  5.52s
Blake2:  397.71s
+++16-byte speed (1,280M keys):
MUM      :  7.36s
Blake2:  396.54s
+++32-byte speed (1,280M keys):
MUM      :  8.22s
Blake2:  393.25s
+++64-byte speed (1,280M keys):
MUM      :  11.58s
Blake2:  399.59s
+++128-byte speed (1,280M keys):
MUM      :  17.18s
Blake2:  401.92s
+++Bulk speed 1KB (100M keys):
MUM      :  6.62s
Blake2:  122.48s
kwinz commented 8 years ago

Thank you, much appreciated!

sergeevabc commented 5 years ago

@vnmakarov, could you be so kind to generate .exe for the rest of us who are mere Windows users w/o compiler?

vnmakarov commented 5 years ago

Sorry, Alekander. I don not use Windows at all and I have no Windows machine at my disposal. I guess you can install VM (e.g. virtualbox) on your Windows computer and a Linux distributive inside it. Another possibility is to use mingw or cygwin environment on Windows machine. They have GCC compiler in it.