private static void TestHashes() { var s = new Stopwatch(); s.Start(); for(int i=0;i<10000000;i++) { var y = i.ToString("00000000000000000000000").GetHashCode(); } Console.WriteLine(".net " + s.Elapsed); s.Reset(); s.Start(); var hasher = new Murmur2Unsafe(); for(int i=0;i<10000000;i++) { hasher.Hash(i.ToString("00000000000000000000000")); } Console.WriteLine("mm2a " + s.Elapsed); s.Reset(); s.Start(); var hasher2 = new Murmur3AUnsafe(); for(int i=0;i<10000000;i++) { hasher2.Hash(i.ToString("00000000000000000000000")); } Console.WriteLine("mm3a " + s.Elapsed); s.Reset(); s.Start(); var hasher3 = new XXHashUnsafe(); for(int i=0;i<10000000;i++) { hasher3.Hash(i.ToString("00000000000000000000000")); } Console.WriteLine("xx " + s.Elapsed); }