PROGRAM CCA7 C BENCHMARK CCA7, FOPR00, GAMMA C BENCHMARK = GAMMA IN NPL REPORT NAC62 C-------------------------------------------------------- C LAWRENCE LIVERMORE LAB. MODIFICATION OF NPL BENCHMARK C MODIFIED FOR AUTOMATIC TIMING OF BENCHMARK C USER SHALL MODIFY THIS PROGRAM IN THE AREAS INDICATED C TO PROVIDE AUTOMATIC TIMING. (SEE BELOW) C USER SHALL RUN THIS BENCHMARK TWICE, C ONCE WITH LOGICAL UNIT 6 SET TO A NULL DEVICE C AND ONCE WITH LOGICAL UNIT 6 SET TO A PRINTING DEVICE. C LOGICAL UNIT 7 SHALL ALWAYS BE SET TO A PRINTING DEVICE. C-------------------------------------------------------- C CENTRAL COMPUTER AGENCY PROGRAM FOPR00 C THIS PROGRAM HAS TWO PARAMETERS MM AND MS C SET MM=70, MS=100 FOR ONE MINUTE ON MACHINE OF POWER OF 360/65 C SET MM=20, MS=35 FOR MACHINE OF 1/10 POWER OF 360/65 C SET MM=70, MS=1000 FOR MACHINE TEN TIMES POWER OF 360/65 C------------------------------------------------------------ C USER SHALL MODIFY THIS TO SET "STIME" TO A REFERENCE TIME C IN SECONDS (ACCURATE TO AT LEAST ONE SECOND). C------------------------------------------------------------- STIME=SECNDS(0.0) GF=1.0 WRITE(6,50) 50 FORMAT(5H G,10X,14HGAMMA FUNCTION) AC=0.0 AY=0.0 YC=0.0 DO 600 I=1,10 IG=I+1 GS=I A=0.0 Y=0.0 X=0.0 GF=GF*GS WRITE(6,100)IG,GF MM = 70 MS = 100 AN=1.0/FLOAT(MS) DO 500 J=1,MM DO 500 K=1,MS XA=X+AN XB=XA+AN YA=EXP(-XA)*XA**GS YB=EXP(-XB)*XB**GS AY=(AN/3.0)*(Y+4.0*YA+YB) A=A+AY YC=YC+YA-YB X=XB 500 Y=YB WRITE(6,100)IG,A 100 FORMAT(I4,F35.24) 600 CONTINUE WRITE(6,200)AC,YC 200 FORMAT(8H SUMS = ,2E30.24) C------------------------------------------------------------ C USER SHALL MODIFY THIS TO SET "TTIME" TO TOTAL AMOUNT OF C ELAPSED TIME SINCE "STIME" IN SECONDS. C------------------------------------------------------------- TTIME=SECNDS(STIME) C LLL MODIFICATION TO PRINT TOTAL ELAPSED TIME OF BENCHMARK TTIME = TTIME/60.0 WRITE(6,1000)TTIME 1000 FORMAT(' BENCHMARK 7 EXECUTION TIME IS ',F8.4,' MINUTES') C-------------------------------------------------------------- STOP END