-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
You can make Python about 2x faster with these changes:
values = [value % maxInt for value in xrange(warmUpIterations)]
values = [(value, value * 2, value + 1) for value in values]
map_get = map.get
# for i in xrange(warmUpIterations):
# num1 = i % maxInt
# num2 = num1 * 2
# num3 = num1 + 1
for num1, num2, num3 in values:
map[num1] = num2
value = map_get(num3)
# if value:
# # Make sure we do something with the result so that it is not optimized away
# sum += valueWhat changed:
- Move the math out of the loop. You want to test hash table performance not integer math.
- Replace
map.getwithmap_getto avoid the method lookup. - Skip summing values. Python's dead-code optimizations are not very aggressive. The loop will stay.
Metadata
Metadata
Assignees
Labels
No labels