;LINFOR.CTL %007 MAKE AND RUN LINFOR.SCP WHICH SIMULATES A LOAD OF ;USERS DOING LINED, FORTRAN AND DDT. ;THE .CTL FILE RUNS THE SCRIPT TWICE AS FAST AS POSSIBLE. 10 ;COPIES ARE RUN, STAGGERED. TO RUN LINFOR TYPE: ; SUBMIT LINFOR/TIME:700,/DIS:DEL ;LINFOR IS USUALLY RUN BY MONTST.CTL IN WEEKLY MONITOR TEST ;SM LIBMAN 4 AUG 77 ; .GOTO SKIP SCP:: !;;STANDARD BENCHMARK SCRIPT FOR LINED/FORTRAN (WITH SLOW USER) - %007 !;;ANON./AGL/PFC/PW/SML 4 AUG 77 !;;FOR 603 MONITOR !500I 100O 2000R 10000F LOGIN 4,777# !10000R 20000F !Q TEST# !VXIN SET TTY ALTMODE !;;RUN VIRTUALLY !Q R SETVM !3000R !;;CHECK VERSION NUMBERS GET SYS:LINED VERSION GET SYS:F40 VERSION GET SYS:PIP VERSION GET SYS:COMPIL VERSION GET SYS:LOADER VERSION !Q DELETE ROOTS.*,SOURCE.* CREATE SOURCE.F4 !2000R 25000F I 100,100 !20000F 1 ACCEPT 2,A,B,C !30000F 2 FORMAT(3E) !25000F 40 DISCR=B**2-4.*A*C IF(DISCR) 100,200,300 !20000F 100 TWOA=2.*A X1R=-B/TWOA !25000F X2R=X1R !20000F X1I=SQRT(DISC)/TWOA X2I=X1I !25000F GO TO 1000 !20000F 200 X1R=-B/TWOA X2R=X1R !25000F GO TO 1000 300 S+SQRT(DISC) X1R=(S-B)/TWOA !20000F X2R=(-S-B)/TWOA X1I=0. !30000F X2I= . !20000F 1000 IF (X1I.NE.0.) GO TO 1200 !30000F TYPE 1001,A,B,C 1001 FORMAT(' ROOTS OF QUADRATIC',2X,'A=',E12.4, !25000F 1 2X,'B=',E12.4,2X,'C=',E12.4) TYPE 1002,X1R,X2R !20000F 1002 FORMAT(10X,2E20.4) GO TO 2000 !25000F 1200 TYPE 1001,A,B,C !30000F TYPE 1201,X1R,X1I,X2R,X2I !20000F 1201 FORMAT(2(5X,E12.4,2X,1H+,E12.4,1H+) GO TO 2000 !10000F 2000 STOP END !L !40000F } !N !20000F I350 !25000F TWOA=2.*A !L !20000F } !N !25000F D500,600 I600 !10000F 100 X1R=-B/TWOA !L !20000F } !N !30000F P300,600 !25000F I800 !10000F X1I=SQRT(-DISCR)/TWOA !L !20000F } !N I900 !10000F X2I=-X1I !L !25000F } !N !20000F I1300 !10000F GO TO 800 !L !30000F } !N !20000F D1700,1800 I1700,100 !10000F 800 X1I=0. !20000F X2I=0. !10000F !L ;;NEEDED FOR LINED SPEC CHANGE } !N P1600,1900 E ^C !25000F 10000R 3Q COMPILE SOURCE.F4 EDIT !20000F 2000R I1400,100 !25000F 300 S=SQRT(DISCR) !30000F !L ;;NEEDED FOR LINED SPEC CHANGE } !N I2800,100 !20000F 1201 FORMAT(2(2X,E12.4,2X,1H+,E12.4,1HI)) !10000F !L ;;NEEDED FOR LINED SPEC CHANGE } !N E !20000F ^C !10000R DEBUG/DDT !2000R !L !25000F MAIN.}: !10000F 1000P}B !50000F }G !N !20000F 3 -18 27 !L !25000F }}F !10000F X1R/ X2R/ X1I/ !20000F X2I/ !25000F DISCR/ !40000F }G !N !20000F 9 7 -2 !L !10000F X1R/ X1I/ X2R/ X2I/ !20000F DISCR/ !30000F }G !N !20000F 1 -6 9.25 !L !10000F X1R/ X2R/ X1I/ X2I/ DISCR/ !N ^C !20000F 10000R EXECUTE !2000R 3 -18 27 ST 9 7 -2 ST !25000F 1 -6 9.25 !20000F SAVE DSK:SOURCE TYPE SOURCE.F4 DELETE SOURCE.BAK,SOURCE.REL !25000F R PIP !;;THESE RENAMES WOULD REALLY BE TO PRESERVE, BUT WE DON'T !;;WANT THE DIRECTORY TO BE FULL WHEN RERUN. ROOTS.F4<057>/R_SOURCE.F4 !10000F ROOTS.EXE<057>/R_SOURCE.EXE ^C KJOB/D/D !XOUT SKIP:: ;DO THIS IN VM IF WE CAN .R SETVM .IF (ERROR) ;IGNORE .R TECO =ERLINFOR.CTL *_SCP:: =0,.K =EWLINFOR.SCP =NSKIP::0L =.,ZKPWEF ; ;END OF FILE LINFOR.SCP. RUN 10 JOBS. ; ;RUN AS FAST AS POSSIBLE FOR MONTST. .R SCRIPT *LINFOR .CONT *10 * *LINFOR *LINFOR *2 *0 * *Y *N *Y .IF (ERROR) .GOTO B .PLEASE LINFOR SUCCESSFUL .DELETE LINFOR.WCH .DELETE LINFOR.SCP .GOTO A B:: .PLEASE ERROR RUNNING LINFOR.SCP .PRINT LINFOR.WCH/DISPOSE:DELETE A:: %FIN: .NOERROR .DELETE LINFOR.SCP