//JOBNAME  JOB (ACCT,ROOM),'HOTTEL TASKTIME',MSGCLASS=S,CLASS=K
//PROCLIB JCLLIB ORDER=USERID.DVL.PROC
//        SET TITLE1='PFX.TASKTIME'
//OUTPUT INCLUDE MEMBER=DESTCH
//*-------------------------------------------------------------------*
//*        ASSEMBLY                                                   *
//*-------------------------------------------------------------------*
//STEP02   EXEC HLASMCL
//ASM.SYSUT2 DD DSN=&&SYSUT2,UNIT=SYSDA,
//           SPACE=(1700,(600,100))
//ASM.SYSPUNCH DD DUMMY
//ASM.SYSIN DD *
TASKTIME TITLE 'GET CPU TIME IN MICROSECONDS SINCE TASK STARTED'
TASKTIME AMODE 31
TASKTIME RMODE ANY
TASKTIME START
*---------------------------------------------------------------------*
*      01  STARTED       PIC S9(18) COMP.                             *
*      01  ENDED         PIC S9(18) COMP.                             *
*      01  ELAPSED       PIC S9(18) COMP.                             *
*      01  RUNNING-TOTAL PIC S9(18) COMP VALUE ZERO.                  *
*                                                                     *
*          PERFORM X TIMES                                            *
*              CALL 'TASKTIME' USING STARTED                          *
*              . . .  CODE BEING TIMED                                *
*              CALL 'TASKTIME' USING ENDED                            *
*              COMPUTE ELAPSED = ENDED - STARTED                      *
*              DISPLAY ELAPSED ' CPU MICROSECONDS THIS ITERATION'     *
*              ADD ELAPSED TO RUNNING-TOTAL                           *
*          END-PERFORM                                                *
*          DISPLAY RUNNING-TOTAL ' IS TOTAL CPU FOR ALL ITERATIONS'   *
*                                                                     *
*---------------------------------------------------------------------*
         YREGS
TASKTIME CSECT ,
         SAVE  (14,12),,TASKTIME.&SYSDATE..&SYSTIME
         LR    R12,R15             BASE REG
         USING TASKTIME,R12
         L     R5,0(R1)            POINT TO CALLER'S DBLWORD
         XR    R15,R15
         TIMEUSED STORADR=(5),LINKAGE=SYSTEM,CPU=MIC
         RETURN (14,12),RC=(15)
         END   TASKTIME
//LKED.SYSLMOD DD DSN=USERID.TOOLS.LOAD(TASKTIME),DISP=SHR
//LKED.SYSIN   DD *
 NAME TASKTIME(R)



Charles Hottel

-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]]
On Behalf Of Jake anderson
Sent: Wednesday, March 07, 2012 3:05 AM
To: [email protected]
Subject: CPU timeused

Hello All,

I am looking for a assembler  source code which would help in measurng the
CPU time taken for each statement in COBOL. Could anyone advise me if you
have sample Code using which I can modify according to my requirement.

Jake

Reply via email to