Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 33 lines (23 sloc) 0.727 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

import smhasher
import timeit

print('smhasher version: %s\n\n' % smhasher.__version__)

def demo(name, seed=None):
    text = 'samplebias'
    func = getattr(smhasher, name)
    msg = name
    if seed:
        msg += ' seed: %d' % seed
        res = func(text, seed)
    else:
        res = func(text)
    print('%s\n %d\n %s\n' % (msg, res, hex(res)))

demo('murmur3_x86_64')
demo('murmur3_x86_64', 123)

demo('murmur3_x86_128')
demo('murmur3_x64_128')
demo('murmur3_x86_128', 123456789)


# timing comparison with str __hash__
t = timeit.Timer("smhasher.murmur3_x86_64('hello')", "import smhasher")
print('smhasher.murmur3:', t.timeit())

t = timeit.Timer("str.__hash__('hello')")
print(' str.__hash__:', t.timeit())

Something went wrong with that request. Please try again.