In [1]:
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline

In [10]:
df = pd.read_csv('bookkeeper_task_variation.csv', skipinitialspace=True)

ax = df.plot(kind='line',x=['Tasks'],y=['Memory(MB)'], logx=True,title='Memory consumption + Time to create \n dictionary (pipelines=1, stage per pipeline=1)')
ax1 = df.plot(ax=ax, kind='line',x=['Tasks'],y=['Time(secs)'], secondary_y=True)

ax.set_ylim(0,1000)
ax.set_ylabel('Memory (MB)')
ax1.set_ylim(0,10)
ax1.set_ylabel('Time (secs)')

patches, labels = ax.get_legend_handles_labels()
p2, l2 = ax1.get_legend_handles_labels()
patches.extend(p2)
labels.extend(l2)
ax.legend(patches, labels, loc='upper left')

plt.savefig('bookkeeper_task_variation.png')



In [11]:
df = pd.read_csv('bookkeeper_stage_variation.csv', skipinitialspace=True)

ax = df.plot(kind='line',x=['Stages'],y=['Memory(MB)'], logx=True, title='Memory consumption + Time to create \n dictionary (pipelines=1, tasks per stage per pipeline=1)')
ax1 = df.plot(ax=ax, kind='line',x=['Stages'],y=['Time(secs)'], secondary_y = True)

ax.set_ylim(0,500)
ax.set_ylabel('Memory (MB)')
ax1.set_ylim(0,5)
ax1.set_ylabel('Time (secs)')

patches, labels = ax.get_legend_handles_labels()
p2, l2 = ax1.get_legend_handles_labels()
patches.extend(p2)
labels.extend(l2)
ax.legend(patches, labels, loc='upper left')

plt.savefig('bookkeeper_stage_variation.png')



In [12]:
df = pd.read_csv('bookkeeper_pipeline_variation.csv', skipinitialspace=True)
#print df
ax = df.plot(kind='line',x=['Pipelines'],y=['Memory(MB)'], logx=True, title='Memory consumption + Time to create \n dictionary (stages per pipeline=1, tasks per stage per pipeline=1)')
ax1 = df.plot(ax=ax, kind='line',x=['Pipelines'],y=['Time(secs)'], secondary_y=True)

ax.set_ylim(0,1000)
ax.set_ylabel('Memory (MB)')
ax1.set_ylim(0,10)
ax1.set_ylabel('Time (secs)')

patches, labels = ax.get_legend_handles_labels()
p2, l2 = ax1.get_legend_handles_labels()
patches.extend(p2)
labels.extend(l2)
ax.legend(patches, labels, loc='upper left')

plt.savefig('bookkeeper_pipeline_variation.png')



In [16]:
df = pd.read_csv('bookkeeper_path_variation.csv', skipinitialspace=True)
#print df
ax = df.plot(kind='line',x=['Chars'],y=['Memory(MB)'], logx=True, title='Mem cons + TTC dictionary with N char path \n (pipelines=100, stages per pipeline=100, tasks per stage=100)')
ax1 = df.plot(ax=ax, kind='line',x=['Chars'],y=['Time(secs)'], secondary_y=True)

ax.set_ylim(100,200)
ax.set_ylabel('Memory (MB)')
ax1.set_ylim(0,10)
ax1.set_ylabel('Time (secs)')

patches, labels = ax.get_legend_handles_labels()
p2, l2 = ax1.get_legend_handles_labels()
patches.extend(p2)
labels.extend(l2)
ax.legend(patches, labels, loc='upper left')

plt.savefig('bookkeeper_path_variation.png')



In [14]:
df = pd.read_csv('bookkeeper_random_accesses.csv', skipinitialspace=True)
#print df
ax = df.plot(kind='line',x=['N'],y=['Time(secs)'], logx=True, title='Time to make N random accesses (pipelines=100, \n stages per pipeline=100, tasks per stage per pipeline=100)')

ax.set_ylim(0,10)
ax.set_ylabel('Time (secs)')

patches, labels = ax.get_legend_handles_labels()
ax.legend(patches, labels, loc='upper left')

plt.savefig('bookkeeper_random_accesses.png')



In [ ]: