diff --git a/figures/cpu_matvec.pdf b/figures/cpu_matvec.pdf index 31e97c6..3471140 100644 Binary files a/figures/cpu_matvec.pdf and b/figures/cpu_matvec.pdf differ diff --git a/figures/kernels.pdf b/figures/kernels.pdf index 28b01ab..d78f55d 100644 Binary files a/figures/kernels.pdf and b/figures/kernels.pdf differ diff --git a/figures/mlfmm_bw.pdf b/figures/mlfmm_bw.pdf index 81a0272..51592b7 100644 Binary files a/figures/mlfmm_bw.pdf and b/figures/mlfmm_bw.pdf differ diff --git a/figures/mlfmm_minsky.pdf b/figures/mlfmm_minsky.pdf index 2adc3b3..af7c036 100644 Binary files a/figures/mlfmm_minsky.pdf and b/figures/mlfmm_minsky.pdf differ diff --git a/figures/plots.py b/figures/plots.py index 84144b7..1d884f4 100644 --- a/figures/plots.py +++ b/figures/plots.py @@ -47,7 +47,7 @@ plt.savefig('figures/mlfmm_minsky.pdf') print 'figures/mlfmm_minsky.pdf' fig, ax = plt.subplots() -systems = ('BW 32T', "Minsky 160T", "BW 4 GPU" ,"Minsky 4 GPU") +systems = ['BW 32T', "Minsky 160T", "BW 4 GPU" ,"Minsky 4 GPU"] p2m = (127.10, 72.10749, 7.73, 1.604) m2m = (156.2506, 102.61091, 9.613814, 1.746476) m2l = (189.615, 82.67791, 18.177774, 2.671025) @@ -63,15 +63,17 @@ l2p_ratio = [i/j for i,j in zip(l2p, total)] p2p_ratio = [i/j for i,j in zip(p2p, total)] x_pos = np.arange(len(systems)) -ax.bar(x_pos, p2p_ratio, color='black') -ax.bar(x_pos, l2p_ratio, color='red', bottom=p2p_ratio) -ax.bar(x_pos, l2l_ratio, color='blue', bottom=[sum(i) for i in zip(l2p_ratio,p2p_ratio)]) -ax.bar(x_pos, m2l_ratio, color='green', bottom=[sum(i) for i in zip(l2l_ratio, l2p_ratio,p2p_ratio)]) -ax.bar(x_pos, m2m_ratio, color='orange', bottom=[sum(i) for i in zip(m2l_ratio, l2l_ratio, l2p_ratio,p2p_ratio)]) -ax.bar(x_pos, p2m_ratio, color='lightgray', bottom=[sum(i) for i in zip(m2m_ratio, m2l_ratio, l2l_ratio, l2p_ratio,p2p_ratio)]) +ax.bar(x_pos, p2p_ratio, color='0', label='p2p') +ax.bar(x_pos, l2p_ratio, color='0.15', label='l2p', bottom=p2p_ratio) +ax.bar(x_pos, l2l_ratio, color='0.3', label='l2l', bottom=[sum(i) for i in zip(l2p_ratio,p2p_ratio)]) +ax.bar(x_pos, m2l_ratio, color='0.45', label='m2l', bottom=[sum(i) for i in zip(l2l_ratio, l2p_ratio,p2p_ratio)]) +ax.bar(x_pos, m2m_ratio, color='0.6', label='m2m', bottom=[sum(i) for i in zip(m2l_ratio, l2l_ratio, l2p_ratio,p2p_ratio)]) +ax.bar(x_pos, p2m_ratio, color='0.75', label='p2m', bottom=[sum(i) for i in zip(m2m_ratio, m2l_ratio, l2l_ratio, l2p_ratio,p2p_ratio)]) ax.set_xticks(x_pos) ax.set_xticklabels(systems) -ax.set_ylabel("Per-MLFMM Execution Time (ms)") +ax.set_ylabel("MLFMM Kernel Breakdown") +handles, labels = ax.get_legend_handles_labels() +ax.legend(handles, labels) # plt.ylim([1, 1e4]) # ax.set_title('How fast do you want to go today?') plt.savefig('figures/kernels.pdf')