|
51 | 51 | single_daint_stokes = 210.2;
|
52 | 52 | single_volta_diff = 481.1;
|
53 | 53 | single_volta_stokes = 334.1;
|
| 54 | +sc = 100; % to get percent |
54 | 55 |
|
55 | 56 | FS = 20;
|
56 | 57 | mylim = [0 870];
|
57 |
| -ylab = 790; |
| 58 | +mylimx = [32 550]; |
| 59 | +ylab = 780; |
58 | 60 |
|
59 |
| -mylim2 = [0.959 1.003]; |
60 |
| -mylimx = [0.8 3.e3]; |
61 |
| -ylab2 = 0.963; |
| 61 | +mylim2 = [0.959 1.003].*sc; |
| 62 | +mylimx2 = [0.8 3.e3]; |
| 63 | +ylab2 = 0.963.*sc; |
62 | 64 |
|
63 | 65 | fig1 = 1;
|
64 | 66 | fig2 = 1;
|
|
71 | 73 | %stokes_2D_octo_2(1,:),T_peak_octo*ones(size(stokes_2D_octo_2(1,:))), 'k--',...
|
72 | 74 | semilogx(stokes_2D_volta_2(1,:),stokes_2D_volta_2(end,:), '-o', ...
|
73 | 75 | stokes_2D_daint_2(1,:),stokes_2D_daint_2(end,:), '-o', ...
|
74 |
| - stokes_2D_octo_2(1,:),T_peak_volta*ones(size(stokes_2D_octo_2(1,:))),'k-.', ... |
| 76 | + 'linewidth',3, 'MarkerFaceColor','k'), set(gca, 'fontsize',FS, 'linewidth',1.4) |
| 77 | +hold on |
| 78 | +semilogx(stokes_2D_octo_2(1,:),T_peak_volta*ones(size(stokes_2D_octo_2(1,:))),'k-.', ... |
75 | 79 | stokes_2D_octo_2(1,:),T_peak_daint*ones(size(stokes_2D_octo_2(1,:))),'k--', ...
|
76 |
| - 'linewidth',3, 'MarkerFaceColor','k'), axis square, set(gca, 'fontsize',FS, 'linewidth',1.4) |
| 80 | + 'linewidth',1.5, 'MarkerFaceColor','k') |
| 81 | +hold off |
77 | 82 | title({'2D visco-elastic'; 'Stokes'},'fontsize',FS-2)
|
78 | 83 | ylabel({' ';'\bf{T_{eff} [GB/s]}'}, 'fontsize',FS)
|
79 | 84 | ylim(mylim)
|
|
89 | 94 | %stokes_3D_volta_2(2,:),T_peak_octo*ones(size(stokes_3D_volta_2(2,:))), 'k--',...
|
90 | 95 | semilogx(stokes_3D_volta_2(2,:),stokes_3D_volta_2(end,:), '-o', ...
|
91 | 96 | stokes_3D_daint_2(2,:),stokes_3D_daint_2(end,:), '-o', ...
|
92 |
| - stokes_3D_volta_2(2,:),T_peak_volta*ones(size(stokes_3D_volta_2(2,:))),'k-.', ... |
| 97 | + 'linewidth',3, 'MarkerFaceColor','k'), set(gca, 'fontsize',FS, 'linewidth',1.4) |
| 98 | +hold on |
| 99 | +semilogx(stokes_3D_volta_2(2,:),T_peak_volta*ones(size(stokes_3D_volta_2(2,:))),'k-.', ... |
93 | 100 | stokes_3D_volta_2(2,:),T_peak_daint*ones(size(stokes_3D_volta_2(2,:))), 'k--',...
|
94 |
| - 'linewidth',3, 'MarkerFaceColor','k'), axis square, set(gca, 'fontsize',FS, 'linewidth',1.4) |
| 101 | + 'linewidth',1.5, 'MarkerFaceColor','k') |
| 102 | +hold off |
95 | 103 | title({'3D visco-elastic'; 'Stokes'},'fontsize',FS-2)
|
96 | 104 | lg=legend('Tesla V100 SXM2', 'Tesla P100 PCIe'); set(lg,'box','off')
|
97 | 105 | ylim(mylim)
|
| 106 | +xlim(mylimx) |
98 | 107 | set(gca, 'XTick',stokes_3D_volta_2(2,:), 'YTicklabel',[])
|
99 | 108 | xtickangle(45)
|
100 | 109 | set(gca,'fontname','Courier')
|
101 | 110 | xlabel('\bf{nx}', 'fontsize',FS)
|
102 | 111 | text(33,ylab,'(b)','fontsize',FS+2,'fontname','Courier')
|
103 | 112 |
|
104 |
| -pos1 = get(sp1,'position'); set(sp1,'position',[pos1(1)*0.97 pos1(2)*1.15 pos1(3)*1 pos1(4)*1]) |
105 |
| -pos2 = get(sp2,'position'); set(sp2,'position',[pos2(1)*0.97 pos2(2)*1.15 pos2(3)*1 pos2(4)*1]) |
| 113 | +pos1 = get(sp1,'position'); set(sp1,'position',[pos1(1)*0.97 pos1(2)*2 pos1(3)*1.12 pos1(4)*0.8]) |
| 114 | +pos2 = get(sp2,'position'); set(sp2,'position',[pos2(1)*0.97 pos2(2)*2 pos2(3)*1.12 pos2(4)*0.8]) |
106 | 115 | fig = gcf;
|
107 | 116 | fig.PaperPositionMode = 'auto';
|
108 | 117 | % print('fig_perf23D_stokes_2','-dpng','-r300')
|
|
112 | 121 | figure(2),clf,set(gcf,'color','white','pos',[1400 10 800 400])
|
113 | 122 | sp1 = subplot(121);
|
114 | 123 | % diff_3D_mxpu_octo_2(1,:),diff_3D_mxpu_octo_2(end,:)./diff_3D_mxpu_octo_2(end,1), '-o', ...
|
115 |
| -semilogx(diff_3D_mxpu_volta_2(1,:),diff_3D_mxpu_volta_2(end,:)./single_volta_diff, '-o', ... |
116 |
| - diff_3D_mxpu_daint_2(1,:),diff_3D_mxpu_daint_2(end,:)./single_daint_diff, '-o', ... |
117 |
| - 'linewidth',3, 'MarkerFaceColor','k'), axis square, set(gca, 'fontsize',FS, 'linewidth',1.4) |
| 124 | +semilogx(diff_3D_mxpu_volta_2(1,:),diff_3D_mxpu_volta_2(end,:)./single_volta_diff.*sc, '-o', ... |
| 125 | + diff_3D_mxpu_daint_2(1,:),diff_3D_mxpu_daint_2(end,:)./single_daint_diff.*sc, '-o', ... |
| 126 | + 'linewidth',3, 'MarkerFaceColor','k'), set(gca, 'fontsize',FS, 'linewidth',1.4) |
118 | 127 | title({'3D nonlinear'; 'diffusion'},'fontsize',FS-2)
|
119 |
| -ylabel({' ';'\bf{E}'}, 'fontsize',FS) |
| 128 | +ylabel({' ';'\bf{E} [%]'}, 'fontsize',FS) |
120 | 129 | % lg=legend('Titan Xm', 'Tesla V100 SXM2'); set(lg,'box','off')
|
121 | 130 | ylim(mylim2)
|
122 |
| -xlim(mylimx) |
| 131 | +xlim(mylimx2) |
123 | 132 | set(gca, 'XTick',diff_3D_mxpu_daint_2(1,:))
|
124 | 133 | xtickangle(45)
|
125 | 134 | set(gca,'fontname','Courier')
|
|
128 | 137 |
|
129 | 138 | sp2 = subplot(122);
|
130 | 139 | % stokes_3D_mxpu_octo_2(1,:),stokes_3D_mxpu_octo_2(end,:)./stokes_3D_mxpu_octo_2(end,1), '-o', ...
|
131 |
| -semilogx(stokes_3D_mxpu_volta_2(1,:),stokes_3D_mxpu_volta_2(end,:)./single_volta_stokes, '-o', ... |
132 |
| - stokes_3D_mxpu_daint_2(1,:),stokes_3D_mxpu_daint_2(end,:)./single_daint_stokes, '-o', ... |
133 |
| - 'linewidth',3, 'MarkerFaceColor','k'), axis square, set(gca, 'fontsize',FS, 'linewidth',1.4) |
| 140 | +semilogx(stokes_3D_mxpu_volta_2(1,:),stokes_3D_mxpu_volta_2(end,:)./single_volta_stokes.*sc, '-o', ... |
| 141 | + stokes_3D_mxpu_daint_2(1,:),stokes_3D_mxpu_daint_2(end,:)./single_daint_stokes.*sc, '-o', ... |
| 142 | + 'linewidth',3, 'MarkerFaceColor','k'), set(gca, 'fontsize',FS, 'linewidth',1.4) |
134 | 143 | title({'3D visco-elastic'; 'Stokes'},'fontsize',FS-2)
|
135 | 144 | % ylabel({' ';'\bf{E}'}, 'fontsize',FS)
|
136 | 145 | lg=legend('Tesla V100 SXM2', 'Tesla P100 PCIe'); set(lg,'box','off')
|
137 | 146 | ylim(mylim2)
|
138 |
| -xlim(mylimx) |
| 147 | +xlim(mylimx2) |
139 | 148 | set(gca, 'XTick',stokes_3D_mxpu_daint_2(1,:), 'YTicklabel',[])
|
140 | 149 | xtickangle(45)
|
141 | 150 | set(gca,'fontname','Courier')
|
142 | 151 | xlabel('\bf{P (GPUs)}', 'fontsize',FS)
|
143 | 152 | text(1.1,ylab2,'(b)','fontsize',FS+2,'fontname','Courier')
|
144 | 153 |
|
145 |
| -pos1 = get(sp1,'position'); set(sp1,'position',[pos1(1)*1.04 pos1(2)*1.2 pos1(3)*1 pos1(4)*1]) |
146 |
| -pos2 = get(sp2,'position'); set(sp2,'position',[pos2(1)*0.96 pos2(2)*1.2 pos2(3)*1 pos2(4)*1]) |
| 154 | +pos1 = get(sp1,'position'); set(sp1,'position',[pos1(1)*1.04 pos1(2)*2 pos1(3)*1.1 pos1(4)*0.8]) |
| 155 | +pos2 = get(sp2,'position'); set(sp2,'position',[pos2(1)*0.96 pos2(2)*2 pos2(3)*1.1 pos2(4)*0.8]) |
147 | 156 |
|
148 | 157 | fig = gcf;
|
149 | 158 | fig.PaperPositionMode = 'auto';
|
|
0 commit comments