1 / 21
文档名称:

linpack.doc

格式:doc   大小:67KB   页数:21页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

linpack.doc

上传人:梅花书斋 2020/2/12 文件大小:67 KB

下载得到文件列表

linpack.doc

文档介绍

文档介绍:/*TranslatedtoCbyBonnieToy5/88-modifiedon2/25/-modifiedon08/27/09fixtypoline270,plusset'ix'pilesingleprecisionversionforSun-4: cc-DSP-O4-fsingle-fsingle2-piledoubleprecisionversionforSun-4: cc-DDP-O4-lmToobtainrolledsourceBLAS,add-,add--DSPor--DROLLor-pilecorrectly.*/#ifdefSP#defineREALfloat#defineZERO#defineONE#definePREC"Single"#endif#ifdefDP#defineREALdouble#defineZERO#defineONE#definePREC"Double"#endif#defineNTIMES10#ifdefROLL#defineROLLING"Rolled"#endif#ifdefUNROLL#defineROLLING"Unrolled"#endif#include<>#include<>staticREALtime[9][9];main(){ staticREALaa[200][200],a[200][201],b[200],x[200]; REALcray,ops,total,norma,normx; REALresid,residn,eps,t1,tm,tm2; REALepslon(),second(),kf; staticintipvt[200],n,i,ntimes,info,lda,ldaa,kflops; lda=201; ldaa=200; cray=.056; n=100; fprintf(stdout,ROLLING);fprintf(stdout,PREC);fprintf(stdout,"PrecisionLinpack\n\n"); fprintf(stderr,ROLLING);fprintf(stderr,PREC);fprintf(stderr,"PrecisionLinpack\n\n");ops=(*(n*n*n))/+*(n*n);matgen(a,lda,n,b,&norma);t1=second();dgefa(a,lda,n,ipvt,&info);time[0][0]=second()-t1;t1=second();dgesl(a,lda,n,ipvt,b,0);time[1][0]=second()-t1;total=time[0][0]+time[1][0];/*computearesidualtoverifyresults.*/for(i=0;i<n;i++){ x[i]=b[i]; }matgen(a,lda,n,b,&norma);for(i=0;i<n;i++){ b[i]=-b[i]; }dmxpy(n,b,n,lda,x,a);resid=;normx=;for(i=0;i<n;i++){ resid=(resid>fabs((double)b[i])) ?resid:fabs((double)b[i]); normx=(normx>fabs((double)x[i])) ?normx:fabs((double)x[i]); }eps=epslon((REAL)ONE);residn=resid/(n*norma*normx*eps); printf("");printf("x[0]-1x[n-1]-1\n"); printf("%%%%%\n", (double)residn,(double)resid,(double)eps,(double)x[0]-1,(double)x[n-1]-1); fprintf(stderr,"timesarereportedformatricesoforder%5d\n",n); fprintf(stderr,"dgefadgesltotalkflopsunit"); fprintf(stderr,"ratio\n");time[2][0]=total;time[3][0]=ops/(