IO TIME vs COMputable. - VMS

This is a discussion on IO TIME vs COMputable. - VMS ; Hello, I am looking for the reel IO time for a batch. It's seem at the end of the batch report, there is information like : Charged CPU time: 0 00:10:21.34 Elapsed time: 0 00:25:18.93 i know that the IO ...

+ Reply to Thread
Results 1 to 3 of 3

Thread: IO TIME vs COMputable.

  1. IO TIME vs COMputable.

    Hello,

    I am looking for the reel IO time for a batch.

    It's seem at the end of the batch report, there is information like :
    Charged CPU time: 0 00:10:21.34 Elapsed time: 0 00:25:18.93

    i know that the IO time = ELapsed - CPU Time.

    But , if the batch wait the processor (COMputable state) during the
    executing, the IO time was wrong. (i think)

    how can i find the reel "IO TIME" ou COMputable TIME for the batch process.

    is this information available?
    or i am wrong in my reasoning ?

    Thanks you.
    Best regards
    Eric

  2. Re: IO TIME vs COMputable.

    On Nov 2, 10:57 am, "news.rd.francetelecom.fr" wrote:
    > Hello,
    >
    > I am looking for the reel IO time for a batch.


    Why? What problem are you really trying to solve?
    I find it much more fruitful to find out what the IOs are and do
    something about it then to know how long they take. The fastest IO is
    one never done, and better still... one never even considered.


    > It's seem at the end of the batch report, there is information like :
    > Charged CPU time: 0 00:10:21.34 Elapsed time: 0 00:25:18.93
    > i know that the IO time = ELapsed - CPU Time.


    That's often good enough to know whether there is something to be
    done.
    Of course you'd also want to know the direct and buffered io count.

    > But , if the batch wait the processor (COMputable state) during the
    > executing, the IO time was wrong. (i think)


    It's not IO time, it is waiting time.
    Could be waiting for resources, events, synchronization, data,
    whatever.
    For batch jobs,(Disk) IO is often a large component,
    but a disproportionally large IO delay coudl come from a few, slow,
    network IOs.
    Maybe the batch job triggers heavy Oracle queries?

    You correctly identify the scheduling state COM but not CUR as looking
    like IO time.
    But there is also waiting for implicit (RMS bucket / XQP ) Locks
    around IOs..

    Furthermore, IF you batch jobs go COM, then the system is overloaded
    already.
    If you are thinking of speeding up the IO, then the same job is likely
    to simply spend more time in COM state versus LEF state. On the other
    hand, if you could avoid doing the IO, it is a win-win for all
    involved.
    That could be as simple as pre-extending output file and using larger
    buffers.

    > how can i find the reel "IO TIME" ou COMputable TIME for the batch process.


    There is no fool proof way that I can quickly think of.
    If you are very curious, and have nothing better to do, then you could
    consider sampling the process states for a while, maybe 10 times per
    second and just count CUR, COM, LEF and HIBER to get a distribution
    picture.

    Also note that some of the COM/CUR time can be hiding active IOs,
    notably when work with RMS options like Deferred Write, Write-Behind
    and Read-Ahead.

    And also note that some (most READ) IOs could easily be resolve from
    cache while the process is CUR.

    > or i am wrong in my reasoning ?


    Focus on the real problem, on the real activities, use the numbers
    just as indicator, helpers, not the goal itself.

    Hope this helps some,
    Hein van den Heuvel ( at gmail dot com )
    HvdH Performance Consulting


  3. Re: IO TIME vs COMputable.

    On Nov 2, 10:57 am, "news.rd.francetelecom.fr" wrote:
    > Hello,
    >
    > I am looking for the reel IO time for a batch.
    >
    > It's seem at the end of the batch report, there is information like :
    > Charged CPU time: 0 00:10:21.34 Elapsed time: 0 00:25:18.93
    >
    > i know that the IO time = ELapsed - CPU Time.
    >
    > But , if the batch wait the processor (COMputable state) during the
    > executing, the IO time was wrong. (i think)
    >
    > how can i find the reel "IO TIME" ou COMputable TIME for the batch process.
    >
    > is this information available?
    > or i am wrong in my reasoning ?
    >
    > Thanks you.
    > Best regards
    > Eric


    Eric,

    You are correct. IO time DOES NOT equal the difference between CPU
    time and Elapsed time.

    There are many reasons why this is so, including:
    - job being COMputable but not active (partially noted in the
    orginal post)
    - buffered IO on sequential files (which proceeds asynchronously
    while the job is executing)
    - the effects of the disk caches

    I agree with Hein, the numbers are a guide (and there are many more
    than just the ratio between CPU and Elapsed time). The overall system
    performance is the goal.

    There are many things that can be tuned in the application, as I have
    noted in my presentations including the one on "Applications Tuning on
    OpenVMS" (the slides from which are admittedly among the back material
    that I have not yet posted to my site)

    - Bob Gezelter, http://www.rlgsc.com


+ Reply to Thread