Created
March 22, 2020 20:50
-
-
Save ajfriend/d8fda9c3d88f8fbc3bd679d5dd0d9cde to your computer and use it in GitHub Desktop.
H3 kRing timing benchmarks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
s_new_1 = """ | |
-- kRing10: 13.645000 microseconds per iteration (10000 iterations) | |
-- kRing20: 50.505400 microseconds per iteration (10000 iterations) | |
-- kRing30: 110.635500 microseconds per iteration (10000 iterations) | |
-- kRing40: 193.416000 microseconds per iteration (10000 iterations) | |
-- kRing100: 1171.804000 microseconds per iteration (1000 iterations) | |
-- kRing400: 17707.125000 microseconds per iteration (1000 iterations) | |
-- kRingPentagon10: 384.726000 microseconds per iteration (500 iterations) | |
-- kRingPentagon20: 3135.216000 microseconds per iteration (500 iterations) | |
-- kRingPentagon30: 10355.700000 microseconds per iteration (50 iterations) | |
-- kRingPentagon40: 24226.800000 microseconds per iteration (10 iterations) | |
""" | |
s_new_2 = """ | |
-- kRing10: 13.803000 microseconds per iteration (10000 iterations) | |
-- kRing20: 50.641600 microseconds per iteration (10000 iterations) | |
-- kRing30: 111.318300 microseconds per iteration (10000 iterations) | |
-- kRing40: 197.787700 microseconds per iteration (10000 iterations) | |
-- kRing100: 1189.344000 microseconds per iteration (1000 iterations) | |
-- kRing400: 17832.771000 microseconds per iteration (1000 iterations) | |
-- kRingPentagon10: 385.542000 microseconds per iteration (500 iterations) | |
-- kRingPentagon20: 3147.908000 microseconds per iteration (500 iterations) | |
-- kRingPentagon30: 10330.540000 microseconds per iteration (50 iterations) | |
-- kRingPentagon40: 24604.000000 microseconds per iteration (10 iterations) | |
""" | |
s_old_1 = """ | |
-- kRing10: 13.778200 microseconds per iteration (10000 iterations) | |
-- kRing20: 50.593000 microseconds per iteration (10000 iterations) | |
-- kRing30: 112.481900 microseconds per iteration (10000 iterations) | |
-- kRing40: 195.406500 microseconds per iteration (10000 iterations) | |
-- kRing100: 1178.592000 microseconds per iteration (1000 iterations) | |
-- kRing400: 17910.442000 microseconds per iteration (1000 iterations) | |
-- kRingPentagon10: 393.074000 microseconds per iteration (500 iterations) | |
-- kRingPentagon20: 3126.298000 microseconds per iteration (500 iterations) | |
-- kRingPentagon30: 10493.840000 microseconds per iteration (50 iterations) | |
-- kRingPentagon40: 24282.600000 microseconds per iteration (10 iterations) | |
""" | |
s_old_2 = """ | |
-- kRing10: 14.009800 microseconds per iteration (10000 iterations) | |
-- kRing20: 52.824500 microseconds per iteration (10000 iterations) | |
-- kRing30: 113.305600 microseconds per iteration (10000 iterations) | |
-- kRing40: 195.026300 microseconds per iteration (10000 iterations) | |
-- kRing100: 1182.589000 microseconds per iteration (1000 iterations) | |
-- kRing400: 18003.061000 microseconds per iteration (1000 iterations) | |
-- kRingPentagon10: 385.984000 microseconds per iteration (500 iterations) | |
-- kRingPentagon20: 3148.516000 microseconds per iteration (500 iterations) | |
-- kRingPentagon30: 10419.480000 microseconds per iteration (50 iterations) | |
-- kRingPentagon40: 24895.700000 microseconds per iteration (10 iterations) | |
""" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import pandas as pd | |
def foo(s): | |
g = s.split('\n') | |
g = (x.strip(' -') for x in g) | |
g = (x for x in g if len(x)>0) | |
g = (x.split()[:2] for x in g) | |
out = {k[:-1]: float(v) for k,v in g} | |
s = pd.Series(out) | |
return s | |
def change(s_old, s_new): | |
d = { | |
'old': foo(s_old), | |
'new': foo(s_new), | |
} | |
df = pd.DataFrame(d) | |
df['% change'] = ((df['new']/df['old'] - 1)*100).round(2) | |
return df | |
print(change(s_old_1, s_new_1).to_markdown()) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment