Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pandas as pd
- import matplotlib.pyplot as plt
- import sys
- df = pd.read_fwf(sys.argv[1], comment=';')
- df.drop(
- columns=[
- 'seed', 'level', 'it', 'dijkstra', 'unordered', 'ordered', 'expanded',
- 'm', 'many', 'm_expanded', 'bs'
- # 'seed', 'level', 'it', 'dijkstra', 'unordered', 'ordered', 'expanded',
- # 'm', 'many_avx', 'many', 'many_8', 'many_8_n', 'm_expanded',
- # 'dijkstra_pn', 'phast_pn', 'p_many_avx', 'p_many'
- ],
- inplace=True)
- # df['concurrent_queue'] = df['work']
- dfs = [(name, data)
- for _, (name, data) in zip(df.graph.unique(), df.groupby(df['graph']))]
- for name, data in dfs:
- r1 = data.groupby('p').mean().at[1, 'rebuild']
- s1 = data.groupby('p').mean().at[1, 'spinning']
- c1 = data.groupby('p').mean().at[1, 'conditional']
- if int(sys.argv[2]) > 0:
- data['rebuild'] = r1 / data['rebuild']
- data['spinning'] = s1 / data['spinning']
- data['conditional'] = c1 / data['conditional']
- if int(sys.argv[2]) > 1:
- data['rebuild'] /= data['p']
- data['spinning'] /= data['p']
- data['conditional'] /= data['p']
- grouped = data.groupby('p')
- mean = grouped.mean()
- std = grouped.std()
- print(name)
- print(mean)
- mean.plot(fmt='o', yerr=std)
- # mean.plot()
- title = name
- plt.title(title)
- plt.xlabel("number of threads")
- plt.ylabel("time per tree [ms]")
- plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement