*NOSEQ *WIDTH 132 .PROC,SMFSTAT. RETURN,ZZZDATA. REWIND,ZZZSTAT,TAPE2,TAPE3,TAPE4,ZZZLGO. $FSE,ZZZDATA.SUN FTN5,I=ZZZSTAT,L=0,B=ZZZLGO. ZZZLGO,ZZZDATA. REWIND,TAPE2,TAPE3,TAPE4,STATOUT. COPYSBF,TAPE4,STATOUT. COPYSBF,TAPE3,STATOUT. COPYSBF,TAPE2,STATOUT. REWIND,TAPE4. COPY,TAPE4,OUTPUT. REVERT. SMFSTAT COMPLETE. EXIT. REVERT. SMFSTAT FAILED. .DATA,ZZZSTAT. PROGRAM SMFSTAT(TAPE1,TAPE2,TAPE3,TAPE4) INTEGER SCLR(49), VCTR1(18), VCTR2(18) INTEGER VCTR3(18), VCTR4(18), VCTR5(18), VCTR6(18) CHARACTER*20 LBL1(18), LBL2(18), LBL3(18) CHARACTER*20 LBL4(18), LBL5(18), LBL6(18) CHARACTER*55 TAG(43) DATA (TAG(I),I=1,15) / + ' SURPLUS WORD, NOT ON CONSOLE DISPLAYS ', + ' NUMBER OF CRITICAL IAF BUFFER SHORTAGES ', + ' NUMBER OF TASK SHORTAGES ', + ' NUMBER OF SESSIONS ', + ' NUMBER OF TRANSACTIONS ', + ' TOTAL RESPONSE TIME IN MILLISECONDS ', + ' TOTAL THINK TIME IN MILLISECONDS ', + ' PREEMPTIVE SWAPS TO ADVANCE TTY OUTPUT ', + ' PREEMPTIVE SWAPS FOR TASK SHORTAGE ', + ' PREEMTIVE SWAPS FOR IAF BUFFER SHORTAGE ', + ' TTY OUTPUT FRAGMENTATION (BUFFER OVERFLOW) ', + ' USER BREAKS ', + ' USER DETACHES ', + ' MAXIMUM USERS LOGGED IN ', + ' CURRENT NUMBER OF USERS ' / DATA (TAG(I),I=16,30) / + ' REAL TIME CLOCK ', + ' NUMBER OF RECALL CYCLES ', + ' NUMBER OF USER-ECS SWAPS ', + ' NUMBER OF DISK SWAPS ', + ' TOTAL SWAPPING TIME IN MILLISECONDS ', + ' TOTAL CIO TIME IN MILLISECONDS ', + ' NUMBER OF CIO CALLS ', + ' NUMBER OF TRANSACTIONS CAUSING ZERO CIO CALLS ', + ' NUMBER OF TRANSACTIONS CAUSING 16/MORE CIO CALLS ', + ' NUMBER OF CIO CALLS IN LARGE TRANSACTIONS ', + ' TOTAL WORKFILE CIO CALLS FOR INITIAL BUILDS ', + ' TTY INPUT WORDS ', + ' TTY OUTPUT WORDS ', + ' TTY OUTPUT BLOCKS ', + ' NUMBER OF OUTPUT FRAGMENTS WITH SWAP AVOIDANCE ' / DATA (TAG(I),I=31,43) / + ' TOTAL MILLSECONDS OF TASK UTILIZATION ', + ' WORKFILE LINE ACCESSES ', + ' WORKFILE SECTORS READ FROM CACHE ', + ' WORKFILE SECTORS READ FROM DISK ', + ' WORKFILE DRAIN OUTPUT TO SWITCH BUFFER TO INPUT ', + ' WORKFILE PURGE WRONG INPUT SECTOR ', + ' WORKFILE CACHE FLUSH SEQUENCES ', + ' WORKFILE PURGE INPUT TO SWITCH BUFFER TO OUTPUT ', + ' WORKFILE SECTORS WRITTEN TO DISK ', + ' WORKFILE DISCONTIGUOUS WRITE EVENTS ', + ' WORKFILE PADDING SECTORS ', + ' WORKFILE CIO READ FUNCTIONS ', + ' RECALL TO MINIMIZE CPU UTILIZATION ' / DATA LBL1/ ' ', ' ', 'INSTANT', '1/64 SEC', '1/32 SEC', + '1/16 SEC', '1/8 SEC', '1/4 SEC', '1/2 SEC', '1 SEC', + '1-2 SEC', '2-4 SEC', '4-8 SEC', '8-16 SEC', '16-32 SEC', + '32-64 SEC', '64-128 SEC', '128 OR MORE SEC' / DATA LBL2/ ' ', ' ', 'LESS THAN 1 SEC', '1-2 SEC', + '2-4', '4-8', '8-16', '16-32', '32-64', '64-128', + '128-256', '256-512', '512-1K', '1K - 2K', '2K - 4K', + '4K - 8K', '8K - 16K', '16K OR MORE' / DATA LBL3/ ' ', ' ', 'ZERO', '1', '2-3', '4-7', + '8-15', '16-31', '32-63', '64-127', + '128-255', '256-511', '512-1K', '1K - 2K', '2K - 4K', + '4K - 8K', '8K - 16K', '16K OR MORE' / DATA LBL4/ ' ', ' ', 'ZERO', '1', '2-3', '4-7', + '8-15', '16-31', '32-63', '64-127', + '128-255', '256-511', '512-1K', '1K - 2K', '2K - 4K', + '4K - 8K', '8K - 16K', '16K OR MORE' / DATA LBL5/ ' ', ' ', 'ZERO', '1', '2-3', '4-7', + '8-15', '16-31', '32-63', '64-127', + '128-255', '256-511', '512-1K', '1K - 2K', '2K - 4K', + '4K - 8K', '8K - 16K', '16K OR MORE' / DATA LBL6/ ' ', ' ', 'ZERO', '1', '2-3', '4-7', + '8-15', '16-31', '32-63', '64-127', + '128-255', '256-511', '512-1K', '1K - 2K', '2K - 4K', + '4K - 8K', '8K - 16K', '16K OR MORE' / READ(1,1001) SCLR, VCTR1, VCTR2, VCTR3, VCTR4, + VCTR5, VCTR6 1001 FORMAT( 49(O20,/), 6(O10,O10,/,4O5,/,4O5,/,4O5,/,4O5,/) ) WRITE(3,3001) (TAG(I),SCLR(I),I=2,43) 3001 FORMAT(1X,A55,I10) WRITE (4,4001) SCLR(4), SCLR(5), SCLR(14) 4001 FORMAT(' SESSIONS, TRANSACTS, MAX USERS ', 3I10) WRITE (4,4002) .001*FLOAT(SCLR(6))/SCLR(5) 4002 FORMAT(' AVERAGE RESPONSE TIME ', F10.3) WRITE (4,4003) .001*FLOAT(SCLR(7))/SCLR(5) 4003 FORMAT(' AVERAGE THINK TIME ', F10.3) WRITE (4,4004) .001*FLOAT(SCLR(21))/SCLR(22) 4004 FORMAT(' AVERAGE CIO TIME ', F10.3) WRITE (4,4005) FLOAT(SCLR(22))/SCLR(5) 4005 FORMAT(' AVERAGE CIO PER TRANSACTION ', F10.3) WRITE (4,4006) FLOAT(SCLR(5))/SCLR(4) 4006 FORMAT(' AVERAGE TRANSACT PER SESSION ', F10.3) WRITE (4,4007) FLOAT(SCLR(23))/SCLR(5) 4007 FORMAT(' FRACTION OF ZERO-CIO TRANSACT', F10.3) WRITE (4,4008) FLOAT(SCLR(34))/SCLR(33) 4008 FORMAT(' RATIO PRUS READ/CACHED ', F10.3) WRITE (4,4009) FLOAT(SCLR(34))/SCLR(42) 4009 FORMAT(' RATIO PRUS READ/CIO CALL ', F10.3) WRITE (4,4010) FLOAT(SCLR(33))/SCLR(42) 4010 FORMAT(' RATIO CACHE HITS/CIO CALL ', F10.3) WRITE (4,4011) FLOAT(SCLR(27))/SCLR(5) 4011 FORMAT(' INPUT WORDS PER TRANSACT ', F10.3) WRITE (4,4012) FLOAT(SCLR(28))/SCLR(5) 4012 FORMAT(' OUTPUT WORDS PER TRANSACT ', F10.3) WRITE (4,4013) FLOAT(SCLR(24))/SCLR(5) 4013 FORMAT(' FRACTION OF TRANSACTS LARGE ', F10.3) WRITE (4,4014) FLOAT(SCLR(25))/SCLR(22) 4014 FORMAT(' FRACTION OF CIOS, LARGE TRANS', F10.3) WRITE (4,4015) FLOAT(SCLR(32))/SCLR(5) 4015 FORMAT(' AVERAGE LINE ACCESSES/TRANS ', F10.3) WRITE (4,4016) FLOAT(SCLR(32))/SCLR(22) 4016 FORMAT(' RATIO LINE ACCESSES TO CIOS ', F10.3) WRITE (4,4017) FLOAT(SCLR(31))/SCLR(16) 4017 FORMAT(' TASK UTILIZATION FACTOR ', F10.3) WRITE (4,4018) FLOAT(SCLR(30))/SCLR(11) 4018 FORMAT(' FRACTION OF MSGS UNSWAPPED ', F10.3) WRITE(2,2051) VCTR1(1)/(64.0*VCTR1(2)) 2051 FORMAT(/,' AVERAGE RESPONSE TIME PER TRANSACTION ',F10.3) WRITE(2,2001) (LBL1(I),VCTR1(I),I=3,18) 2001 FORMAT(/,' TRANSACTIONS PER RESPONSE TIME CATEGORY ', //, + 16(10X,A12,I10,/) ) WRITE(2,2052) VCTR2(1)/FLOAT(VCTR2(2)) 2052 FORMAT(/,' AVERAGE THINK TIME PER TRANSACTION ',F10.3) WRITE(2,2002) (LBL2(I),VCTR2(I),I=3,18) 2002 FORMAT(/,' TRANSACTIONS PER THINK TIME CATEGORY ', //, + 16(10X,A12,I10,/) ) WRITE(2,2053) VCTR3(1)/FLOAT(VCTR3(2)) 2053 FORMAT(/,' AVERAGE CIO CALLS PER TRANSACTION ',F10.3) WRITE(2,2003) (LBL3(I),VCTR3(I),I=3,18) 2003 FORMAT(/,' TRANSACTIONS PER CIO COUNT CATEGORY ', //, + 16(10X,A12,I10,/) ) WRITE(2,2054) VCTR4(1)/FLOAT(VCTR4(2)) 2054 FORMAT(/,' AVERAGE TRANSACTIONS PER SESSION ',F10.3) WRITE(2,2004) (LBL4(I),VCTR4(I),I=3,18) 2004 FORMAT(/,' SESSIONS PER TRANSACTION COUNT CATEGORY ', //, + 16(10X,A12,I10,/) ) WRITE(2,2055) VCTR5(1)/FLOAT(VCTR5(2)) 2055 FORMAT(/,' AVERAGE WORKFILE LINES PER SESSION ',F10.3) WRITE(2,2005) (LBL5(I),VCTR5(I),I=3,18) 2005 FORMAT(/,' SESSIONS PER FILE SIZE CATEGORY ', //, + 16(10X,A12,I10,/) ) WRITE(2,2056) VCTR6(1)/FLOAT(VCTR6(2)) 2056 FORMAT(/,' AVERAGE OUTPUT MESSAGE SIZE ',F10.3) WRITE(2,2006) (LBL6(I),VCTR6(I),I=3,18) 2006 FORMAT(/,' TRANSACTIONS PER OUTPUT MSG SIZE CATEGORY ', //, + 16(10X,A12,I10,/) ) STOP END *WEOR