home *** CD-ROM | disk | FTP | other *** search
-
- #include <splot.h>
-
- int i,j;
- int firsttime = TRUE;
- double calc[11][4];
- double *data;
-
- double calc2[11][4];
- double *data2;
-
- double calc3[11][4];
- double *data3;
-
- main()
- {
- /* read in data files */
- readdata("demo\mult1.dat",data);
- readdata("demo\mult2.dat",data2);
- readdata("demo\mult3.dat",data3);
-
- /* average batch values but only do it the first time through */
- if (firsttime)
- {
- for (i = 0; i < 11;i++)
- {
- for (j = 0;j < 10;j++)
- {
- calc[i][0] += data[i * 10 + j][0];
- calc[i][1] += data[i * 10 + j][1];
- calc[i][2] += data[i * 10 + j][2];
- calc[i][3] += data[i * 10 + j][3];
- calc2[i][0] += data2[i * 10 + j][0];
- calc2[i][1] += data2[i * 10 + j][1];
- calc2[i][2] += data2[i * 10 + j][2];
- calc2[i][3] += data2[i * 10 + j][3];
- calc3[i][0] += data3[i * 10 + j][0];
- calc3[i][1] += data3[i * 10 + j][1];
- calc3[i][2] += data3[i * 10 + j][2];
- calc3[i][3] += data3[i * 10 + j][3];
- }
- calc[i][0] /= 10;
- calc[i][1] /= 10;
- calc[i][2] /= 10;
- calc[i][3] /= 10;
- calc2[i][0] /= 10;
- calc2[i][1] /= 10;
- calc2[i][2] /= 10;
- calc2[i][3] /= 10;
- calc3[i][0] /= 10;
- calc3[i][1] /= 10;
- calc3[i][2] /= 10;
- calc3[i][3] /= 10;
- }
- firsttime = FALSE;
- }
-
- abox(8,6,5,19.25);
- ascale(YAXES,0,100);
- ascale(XAXES,calc,0);
-
- /* set(YMULT,10);*/
- set(FONTMULT,0.7);
- set(TICKLENGTH,-0.2);
-
- tickmarks();
- ticklabel();
-
- text(14.03,22.25,"1024 Data Items");
-
- set(PLOTTYPE,SYM_LINES);
- set(AXESCLIP,ON);
- set(CURSYMBOL,OSQUARE);
-
- set(LINECOLOUR,RED);
- set(LINESTYLE,SOLID);
- drawdata(calc,0,1);
-
- set(CURSYMBOL,CROSS);
- set(LINECOLOUR,BLACK);
- set(LINESTYLE,DASHED);
- drawdata(calc,0,2);
-
- set(CURSYMBOL,OCIRCLE);
- set(LINECOLOUR,GREEN);
- set(LINESTYLE,DOTTED);
- drawdata(calc,0,3);
-
- /* the second data set */
- set(LINECOLOUR,BLACK);
- set(LINESTYLE,SOLID);
-
- abox(8,6,5,11);
- ascale(YAXES,calc2,1);
- ascale(XAXES,calc2,0);
-
- tickmarks();
- ticklabel();
-
- label(LEFT,"Throughput (TPS)");
- text(14.03,14,"128 Data Items");
-
- set(CURSYMBOL,OSQUARE);
-
- set(LINECOLOUR,RED);
- set(LINESTYLE,SOLID);
- drawdata(calc2,0,1);
-
- set(CURSYMBOL,CROSS);
- set(LINECOLOUR,BLACK);
- set(LINESTYLE,DASHED);
- drawdata(calc2,0,2);
-
- set(CURSYMBOL,OCIRCLE);
- set(LINECOLOUR,GREEN);
- set(LINESTYLE,DOTTED);
- drawdata(calc2,0,3);
-
- /* the third data set */
- set(LINECOLOUR,BLACK);
- set(LINESTYLE,SOLID);
-
- abox(8,6,5,2.75);
- ascale(YAXES,0,10);
- ascale(XAXES,calc3,0);
-
- tickmarks();
- ticklabel();
-
- text(14.03,5.75,"16 Data Items");
-
- set(CURSYMBOL,OSQUARE);
-
- set(LINECOLOUR,RED);
- set(LINESTYLE,SOLID);
- moveto(5.76,24.5);
- symbol(OSQUARE);
- rlineto(1.5,0);
- symbol(OSQUARE);
- drawdata(calc3,0,1);
-
- set(CURSYMBOL,CROSS);
- set(LINECOLOUR,BLACK);
- set(LINESTYLE,DASHED);
- set(PATTOFF,0.5);
- moveto(5.76,23.6);
- symbol(CROSS);
- rlineto(1.5,0);
- symbol(CROSS);
- drawdata(calc3,0,2);
-
- set(CURSYMBOL,OCIRCLE);
- set(LINECOLOUR,GREEN);
- set(LINESTYLE,DOTTED);
- moveto(5.76,22.7);
- symbol(OCIRCLE);
- rlineto(1.5,0);
- symbol(OCIRCLE);
- drawdata(calc3,0,3);
-
- set(LINECOLOUR,BLACK);
- set(LINESTYLE,SOLID);
-
- label(BOTTOM,"Multi Programming Level");
- text(7.53,24.5,"MTL");
- text(7.53,23.6,"TPL");
- text(7.53,22.7,"TSO");
- }
-